Update Notes

3.20.0

Das IES-Admin Kommando psync ist wieder funktionsfähig.

Damit psync korrekt funktionieren kann, muss die PublishedInformationDefinition frei von Inkonsistenzen sein. Daher wird empfohlen vor dem psync folgende Schritte durchzuführen:

  1. In der PublishedInformationDefinition-Tabelle können noch Einträge enthalten sein, bei denen Publikationsen zum löschen vorgemerkt sind und die aus irgenwelchen Gründen noch nicht gelöscht wurden. Dies kann (bei leerer Publisher-Queue) nachgeholt werden, in dem der Publisher-Service einmal gestoppt und wieder gestartet wird. Alternative kann auch der ganze IES einmal neu gestartet werden.
  2. Ggf. sind die Einträge in der PublishedInformationDefinition-Tabelle und der PublicationStateConjunction nicht mehr synchron. Dies kann über das IES-Admin Kommando
    iesadmin db cleaning -a
    
    korrigiert werden.

Nachdem diese Schritte durchgeführt wurden, kann psync gestartet werden.

iesadmin psync -r --force-delete /var/www/domain.de/www

-r - Synchronisation rekursiv durchführen

--force-delete - Nicht nur dem IES unbekannte Dateien sondern auch unbekannte Verzeichnisse werden gelöscht. Ggf. auch rekursive.

iesadmin psync ist ein Alias-Kommando für iesadmin channel sync

3.18.0

Ab Version 3.18.0 für die Datenbank der Charset utf8mb4 verwendet. Mit dem Update werden die Texte in den Datenbanktabllen konviertiert. Ja nach Größe der Datenbank kann dies etwas Zeit in Anspruch nehmen.

Ggf. sollte auch die MySQL/MariaDB Server-Configuration angepasst werden. Einstellungen wie

[mysqld]
character-set-server    = utf8
collation-server        = utf8_general_ci

[client]
default-character-set   = utf8

sollten einfach entfernt werden. Damit greifen die Default-Einstellungen (utf8mb4).

3.16.0

Apache Konfiguration für den IES anpassen

Der IES hat eine REST-API und eine Graph-API bekommen. Um diese nutzen zu können muss die Apache-Konfiguration angepasst werden.

Im Normalfall hat der IES seine eigene Domain. Dann die ProxyPassMatch in der VirtutalHost-Konfiguration so geändert werden:

ProxyPassMatch ^(/.*)$        balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On

Die GraphQA-API unterstützt auch Subscription und verwendet dafür Web-Sockets. Hierfür ist eine weitere VirtutalHost-Konfiguration notwendig.

# WebSocket Support
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*)           ws://${IES_IES_BALANCER_NAME}:8080/$1 [P,L]

In Docker-Umgebungen liegt die anzupassende Datei unter

data/apache2/sites-available/ies.conf

Auf Server-Installationen beispielsweise hier:

/etc/apache2/sites-available/ies.conf

Publikationsbereich bereinigen

Ab Version 3.16.0 wurde ein Bug gefix, der dafür gesorgt hat, dass Medien-Verzeichnisse und Medien-Metadateien bei depublizierten Artikeln nicht gelöscht wurden. Dadurch könnten in den Publikationsbereiche noch Dateien liegen die gelöscht werden müssen.

Dies kann mit folgendem Script erledigt werden:

cleanup.sh

#!/bin/bash

BASE_DIR=$1

for metafile in $(find $BASE_DIR -name \*.meta.php -not -path $BASE_DIR/WEB-IES/\*); do
	mediafile=${metafile%.meta.php}
	translations=${metafile}.translations
	if [ ! -f "$mediafile" ]; then
		echo delete "$metafile"
		echo delete "$translations"
		rm -rf "$metafile" "$translations"
	fi
done

for mediadir in $(find $BASE_DIR -name \*.php.media -not -path $BASE_DIR/WEB-IES/\*); do
	file=${mediadir%.media}
	if [ ! -f "$file" ]; then
		echo delete "$mediadir"
		rm -rf "$mediadir"
	fi
done

3.15.0

Ab Version 3.15.0 wird für Dokumenten-Medien wie PDF, Word-Dokumente und Open-Office-Dokumente der Text extrahiert und in der Medien-Datenbank gehalten. Dieser Text wird ab Sitekit 3.10.0 verwenden, um die Volltext-Daten zu aggregieren die zum Indizieren verwendet werden sollen. Damit diese Text auch für die bereits im System existierenden Dokumente zur Verfügung stehen muss der BinDB Index hier aktualisiert werden.

Dies Erfolg über folgenden Aufruf

iesadmin bindb reindex -a --mime document

document ist kein echter Mime-Type sondern ein Alias der alle Mime-Types beinhaltet, für die der IES die Texte extrahieren kann.

3.14.0

Ab Version 3.14.0 wird Java 21 verwendet. Aus diesem Grund ist ein Update nur mit IES-Admin Modul ab Version 2.7.1 möglich.

Bei einem IES-Update ab Version 3.12.0, muss das IES-Admin-Modul zunächst auf Version 2.7.1 aktualisiert werden, bevor das IES-Update ausgeführt werden kann.

Bei einem IES-Update von älteren Versionen vor 3.12.0 muss zunächst ein Update auf den IES 3.12.0 erfolgen. Damit wird auch das erforderliche IES-Admin-Modul installiert. Danach kann das Update auf eine IES-Version ab 3.14.0 erfolgen.

3.12.0

Support für Metadaten von PDF-Dateien

Von PDF-Dateien werden nun folgende Metadaten ermittelt:

  • Änderungsdatum
  • Title
  • Beschreibung

Damit auch die Metadaten der bereits im System enthaltenen PDF-Dateien verwendet werden können, müssen diese PDF-Dateien neu indiziert werden. Nach dem Update kann dies über den Aufruf

iesadmin bindb reindex -a --mime "application/pdf"

erfolgen.

Damit sich diese Änderungen auch auf die generierten Metadaten auswirken, müssen die PDF-Dateien einmal neu generiert werden.

iesadmin generate -a -async -q "objectclass = 'MediaPublishable'"

3.8

Geo-API Update

Diese Version enthält eine Major-Update der Sitepark-Geo API von 1.16 auf 2.1

Darin enthalten ist eine Abwärtskompatibilität. Die Klasse com.sitepark.geo.position.LatLngPosition wurde nach com.sitepark.geo.position.LngLatPosition umbenannt und der Konstruktor entsprechend geändert.

In einigen Kunden-Modulen wird die Funktion genutzt und muss vor einem Update angepasst werden.

SASS update

Bisher wurde JSass 5.8.0 mit eingebetteter libsass Version 3.5.5 verwendet um Micoriste-spezifisches CSS zu erzeugen. Ab Version 3.8 wird JSass 5.10.5 mit libsass Version 3.6.4 verwenden.

Durch diese Änderungen kann es passieren, dass bestehender Sass-Code in den den Kunden-Modulen nicht mehr kompiliert werden kann und ggf. an die neue libsass Version angepasst werden muss. Ein guter Start für die Migration ist die Aktualisierung der sass-Abhänigigkeiten im jeweiligen Projekt (z.B. sass-basics).

Änderung der Medien-Indizierung

Ab IES Version 3.8 wird an Solr die Medien-Metadatei zur Indizierung übergeben. Nicht mehr wie bis dahin die Medien-Datei selber. Dadurch ist es möglich ergänzende Metadaten, wie z.B. Kategorisierung, Archive-Flag, usw über Sitekit-Technik auch für Medien an Solr zu übergeben.

Aufgrund diese Änderung ist es notwendig mit dem Update des IES auf Version 3.8 im gleichen Zuge ‘’‘auch das Solr-Module ab Version 3.5’’’ zu installieren. Sonst werden die Inhalte der Medien nicht mehr indiziert.

3.7

Zusammen mit den weiteren Modulen:

  • IES Webnode 2.3
  • Apache-Control 1.24
  • Solr 3.3

die mit dem IES 3.7 ebenfalls aktualisiert werden sollten, sind die Log-Dateien nach dem Update unter

/var/log/sitepark/ies
/var/log/sitepark/ies-webnode
/var/log/sitepark/fpm

zu finden

3.0

Der IES-3 benötigt mindestens MySQL 8.0.1+ oder MariaDB 10.3+

Es wird empfohlen, das Major-Update in Abstimmung mit Sitepark durchzuführen.

Der IES-3 ist nahezu komplett kompatibel zum IES-2. Bei einem Update auf den IES-3 sollte aber auf folgendes geachtet werden

  • Vor dem Update für alle Webnodes die letzte Update-Datei löschen
    rm /srv/sitepark/ies-webnode/update/*
    
  • Die Log-Dateien liegen jetzt in einem eigenen Verzeichnis (in SITEPARK_HOME/logs)
  • Das Webdav-Modul wird nicht mehr unterstützt. Es sollte nach dem Update geprüft werden ob das Module vollständig gelöscht wurde. Wenn nicht, sollte
    rm -rf /srv/sitepark/ies/modules/webdav.war
    
    ausgeführt werden.
  • Der SPML-Compiler ist etwas strenger als bisher. Bei Systemen die Templates aus der Template-Verwaltung in Infosite5 nutzen müssen nach dem Update alle Templates neu kompiliert werden. In der ies.log-Datei sollte dann auf ERROR-Einträge von ies.services.generator.Generator geachtet werden. Beim generieren von Seiten mit fehlerhaften Templates werden org.apache.jasper.JasperException Einträge erzeugt. Es können zwei verschiedene Fehler auftreten. ** Zwei gleiche Attribute in einem Tag z.B. <sp:print name="a" name="b"/> ** Leerzeichen zwischen Attribut-Name und Attribut Wert. Z.B. <sp:print name ="a"/> oder <sp:print name= "a"/>
  • Die Angaben IES_INIT_OUTPUT und IES_LOG_ROTATE in der /etc/sitepark/sitepark.conf werden nicht mehr ausgewertet und können entfernt werden.

Die Haupt-Neuerungen im IES-3 sind:

  • Der IES-3 wird nicht mehr für Windows angeboten.
  • Update auf Java 17. Wird jetzt vom IES mitgeliefert und aktuell gehalten.
  • Umstellung von JBoss auf Jetty als Server-Basis
  • Docker-Support (z.Z. für Entwicklungssysteme)
  • Neues Module-System mit Erweiterung für eigenständige Frontend- und Frontent-Delivery-System-Module
  • Aktualisierung aller Abhängigkeiten

2.66

Windows wird nicht mehr unterstützt. Relevant ist das nur für Entwicklungs-Systeme, da kein Produtiv-System unter Windows läuft. Alternativ kann der IES unter Windows in einer virtuellen Umgebung (z.B. VBOX) betrieben werden. Ab Version 3 ist auch der Betrieb in Docker möglich.

Die Bildbearbeitung wurde überarbeitet. Speziell der SVG-Support. Damit SVG-Bilder wie gewünscht verarbeitet werden können sollte dem Update folgendes geprüft werden:

Ist der Interne SVG-Support von ImageMagick verfügbar:

convert -list format | grep SVG

Die Ausgabe sollte in etwas so aussehen:

MSVG  SVG       rw+   ImageMagick's own SVG internal renderer
SVG   SVG       rw+   Scalable Vector Graphics (XML 2.9.4)
SVGZ  SVG       rw+   Compressed Scalable Vector Graphics (XML 2.9.4)

Ist das nicht der Fall muss noch libmagickcore-*-extra installiert werden. Die genaue Version läßt Mit Debian/Ubuntu wie folgt ermitteln

apt search libmagickcore

Zusätzlich ist noch rsvg-convert notwendig. Die wird wie folgt installiert

# Debian/Ubuntu
apt-get install librsvg2-bin
# CentOS
yum install librsvg2-tools
# openSUSE
zypper install rsvg-convert # bzw. zypper install rsvg-view

Soll oder kann rsvg nicht installiert werden, muss der Delegator per

-Dcom.sitepark.imgfile.imagemagick.scale.svgDelegator=svg

zurück gesetzt werden. Dies erfolgt über die Konfiguration in “sitepark.conf”

IES_OPTS="-Dcom.sitepark.imgfile.imagemagick.scale.svgDelegator=svg"

Update Apache

Aktuelle Projekte basieren i.d.R. auf Macros von Sitepark zur einfachen Konfiguration der Webserver. Für diese Macros ist in Zukunft ein Apache Version 2.4.34 oder größer empfohlen. Dieser wird in aktuellen Distributionen (Debian 10, Ubuntu 20.04) bereits ausgeliefert. Ubuntu 18-Systeme sollten die Paketquellen von Ondrej einbinden um das Update des Apache zu erhalten: https://launchpad.net/~ondrej/+archive/ubuntu/apache2 Sollten Sie hierzu Fragen haben, sprechen Sie uns gerne an. Sollten Sie keine Macros von Sitepark eingebunden haben, können Sie diesen Hinweis ignorieren.