Do, 18. Oktober, 2018

Matomo-Updater

Ich habe bei meinem Hoster ein shared Hosting. Dort läuft seit (gefühlt) “ewig” eine Piwik-Instanz. Heute Matomo.
Das aktuellste Matomo Zipfile enthält das Unterverzeichnis “matomo”. Aber meine Instanz liegt noch in einem andersnamigen Verzeichnis.

Damit ich auch künftig weiter automatisiert auf die aktuelle Matomo Version aktualisieren kann, habe ich ein Shellskript geschrieben, was das entpackte Achiv ins eigentliche Installverzeichnis schiebt.

Falls dies noch wer gebrauchen kann … bitteschön und am liebsten auf Github schauen [2] :-) Anzupassen ist der Bereich Config…

2018-10-19-matomo-update.png

#!/bin/bash
# ======================================================================
#
# MATOMO UPDATER
#
# ———————————————————————-
# Download latest matomo and install into any directory
# (even if not named matomo, i.e. piwik)
# ———————————————————————-
#
# requires these binaries in the path
# - wget
# - unzip
# - rsync
# - php
#
# ———————————————————————-
# 2018-10-18  v1.0   www.axel-hahn.de
# ======================================================================
# ———————————————————————-
# CONFIG
# ———————————————————————-
    # webroot … you can leave it empty if you have a shared hosting
    # sWebroot=’/var/www/html’
    sWebroot='’
    
    # subdir of your matomo installation - as relative dir below webroot
    appDir=”piwik”
    sDownloadUrl=’https://builds.matomo.org/matomo.zip’
    xDir=”tmp-matomo”
    xDir2=”${xDir}/matomo”
    Zipfile=”${xDir}/matomo.zip”
# ———————————————————————-
# MAIN
# ———————————————————————-
    echo
    echo ========== MATOMO UPDATER ==========
    echo
    
    echo — cd to webroot [${sWebroot}]
    cd ${sWebroot} || exit 1
    pwd
    echo
    echo — small check if MATOMO is in [${appDir}] …
    ls -l ${appDir}/console ${appDir}/config/config.ini.php || exit 2
    echo OK.
    echo
    echo — create temp dir [${xDir}]
    mkdir ”${xDir}” || exit 3
    echo OK.
    echo
    echo — download to [${Zipfile}]
    wget -O ${Zipfile} ${sDownloadUrl} || exit 3
    echo OK.
    echo
    echo — extract [${Zipfile}] in temp directory [${xDir}] …
    unzip -uoq ${Zipfile} -d ”${xDir}” || exit 4
    ls -ld ${xDir2} || exit 5
    echo OK.
    echo
    
    echo — saving current config
    sBakfile=${appDir}/config/config.ini.`date +%Y%m%d_%H%M%S`.php
    cp ${appDir}/config/config.ini.php ${sBakfile} || exit 6
    ls -l ${sBakfile}
    echo OK.
    echo
    echo — sync new files form [${xDir2}] to current install dir [${appDir}]
    rsync -r ${xDir2}/* ${appDir} || exit 7
    echo OK.
    echo
    echo — update database
    php ${appDir}/console core:update || exit 8
    echo OK, UPDATE SUCCESSFUL.
    echo
    
    
    echo — finally: cleanup all temp data in [${xDir}] …
    rm -rf ${xDir} || exit 9
    echo OK.
    echo
    echo DONE.
# ———————————————————————-

Updates:

  1. 22.11.2018: Github-Repository hinzugefügt

weiterführende Links:

  1. https://matomo.org - Matomo Webseite
  2. Github: Matomo updater

RSS | ATOM


Kommentar hinzufügen

Die Felder Name und Kommentar sind Pflichtfelder.


BBCode Hilfe

 

Abonnieren