Eclipse-Aktualisierungsrichtlinie steuern

Die Eclipse-Aktualisierungsfunktion ermöglicht den Benutzern die Suche nach Updates für die gegenwärtig installierten Features. Für jedes installierte Feature verwendet die Aktualisierungsfunktion die eingebettete URL, um eine Verbindung zum fernen Server herzustellen und nach neuen Versionen zu suchen. Falls Aktualisierungen vorhanden sind, ermöglicht es Eclipse den Benutzern, das Installationsverfahren einzuleiten. Nach dem Download, der Installation und dem Neustart der Plattform ist die neue Version des Features einsatzbereit.

In Unternehmen, in denen viele Benutzer dasselbe Eclipse-basierte Produkt verwenden (normalerweise ein kommerzielles Produkt), können bei diesem Modell mehrere Probleme auftreten:

  1. Aktualisierungen für sehr große Produkte (z. B. 500+ Plug-ins) sind ebenfalls sehr groß. Für die IT-Unterstützungsteams ist es möglicherweise nicht wünschenswert, dass Hunderte von Entwicklern einzeln 500 MB große Aktualisierungen auf ihre einzelnen Maschinen herunterladen. Zusätzlich zu der Belastung der Bandbreite besteht bei derart großen Downloadanforderungen die Gefahr von Fehlern, was zu wiederholten Versuchen und einer höheren Ausfallzeit von Entwicklern führt.
  2. In einigen Unternehmen ist es ausdrücklich untersagt, dass Entwickler Aktualisierungen direkt aus dem Internet herunterladen. So können sie z.B. ein lokales Support-Team einrichten, das noch nicht in der Lage ist, Anfragen in Bezug auf eine Produktversion zu beantworten, die bereits auf der Update-Site des Providers verfügbar ist. Sie möchten möglicherweise Aktualisierungen und Korrekturen auf eine intern genehmigte Liste beschränken. Idealerweise würde dies dadurch geschehen, dass "Proxy-Update-Sites" in dem LAN (hinter der Firewall) eingerichtet werden.
  3. Sobald Aktualisierungen auf den Proxy-Sites wie vorstehend beschrieben eingerichtet sind, müssen die Administratoren den Benutzern mitteilen, dass Aktualisierungen verfügbar sind.

2. Aktualisierungsrichtlinie für den Notfall

2.1 Unterstützung für die Erstellung lokaler (Proxy-)Update-Sites

Der erste Schritt für einen Produktadministrator wäre die Einrichtung einer lokalen Eclipse Update-Site auf einem Server, der mit dem LAN des Unternehmens verbunden ist (hinter der Firewall). Die Update-Site wäre eine Untergruppe der Update-Site des Produkts im Internet, da sie nur Features und Plug-ins enthalten würde, die mit den Aktualisierungen, die das Unternehmen zum jeweiligen Zeitpunkt anwenden möchte, in Verbindung stehen. Technisch gesehen wäre diese Site eine reguläre Eclipse Update-Site mit site.xml, Feature- und Plug-in-Archiven.

Administratoren können diese Site auf zwei Wegen erstellen:

  1. Produkt-Supportteams können eine komprimierte Datei der bereits für diesen besonderen Zweck zur Verfügung stehenden Update-Site erstellen. Die Administratoren müssten lediglich die komprimierte Datei von der Webseite des Produktsupports mit einem von ihnen gewählten Tool herunterladen und sie auf dem lokalen Server dekomprimieren. Diese Strategie ist für äußerst große komprimierte Dateien nützlich, die moderne wieder anlauffähige Downloadmanager benötigen (denen eine Wiederaufnahme möglich ist, wenn sie bei Verbindungsproblemen unterbrochen werden).
  2. Die Eclipse-Aktualisierungsfunktion enthält ein Tool, mit dem ferne Update-Sites vollständig gespiegelt werden können und die es Administratoren ermöglichen, Aktualisierungen und Korrekturen zum Download auszuwählen. Diese Spiegelungsfunktion ist vollkommen automatisch und vereinfacht die Task der Administratoren stark, doch sie hängt von dem Update-Netzwerkverbindungssupport ab.

2.2 Allgemeine Steuerung für Aktualisierungsrichtlinie

Da bei den Features die Update-Site-URL im Manifest eingebettet ist, sind ihnen lokale, von den Administratoren eingerichtete Update-Sites nicht bekannt. Deshalb ist es wichtig, eine Umleitungsfunktion bereitzustellen. Diese und andere Einstellungen von Aktualisierungsrichtlinien können für ein Eclipse-Produkt durch das Erstellen einer Aktualisierungsrichtliniendatei und der Konfiguration der Aktualisierungsfunktion zur Verwendung dieser Datei bei der Suche eingerichtet werden.

Die betreffende Datei verwendet das XML-Format und kann einen beliebigen Namen haben. Die Datei kann auf der Seite Benutzervorgaben > Installieren/Aktualisieren in Feld Aktualisierungsrichtlinie festgelegt werden. Das Textfeld ist standardmäßig leer: Die Benutzer können die URL für die Aktualisierungsrichtliniendatei einrichten. Die Datei wird von dem lokalen Administrator verwaltet und wird für alle Produktinstallationen verwendet. Die gemeinsame Benutzung kann auf zwei Weisen realisiert werden:

Die Richtliniendatei muss der folgenden DTD entsprechen:

<?xml encoding="ISO-8859-1"?>

<!ELEMENT update-policy (url-map)*>
<!ATTLIST update-policy
>

<!ELEMENT url-map EMPTY>
<!ATTLIST url-map
    pattern    CDATA #REQUIRED
    url        CDATA #REQUIRED
>

url-map

Dieses Element wird verwendet, um die in Featuremanifesten eingebetteten Update-URLs zu überschreiben. Bei der Suche nach neuen Aktualisierungen prüft die Eclipse-Suchfunktion die Aktualisierungsrichtlinie (wenn vorhanden) und prüft, ob url-map für das Präfix des übereinstimmenden Features angegeben ist. Falls eine Übereinstimmung gefunden wird, wird die zugeordnete URL anstelle der eingebetteten URL verwendet. Dadurch können die Administratoren Eclipse-Produkte so konfigurieren, dass sie nach Aktualisierungen auf dem lokalen Server hinter der Firewall suchen. Unterdessen werden von Eclipse Update installierte Features von Fremdanbieter weiter mithilfe der Standardmechanismen aktualisiert, da sie keine Übereinstimmungen in der Richtlinie finden.

In der Datei können mehrere Elemente url-map vorhanden sein. Featurepräfixe können mehr oder weniger spezifisch gewählt werden. Um beispielsweise alle Eclipse-Updates umzuleiten, müsste das Musterattribut "org.eclipse" lauten. Entsprechend ist es möglich, eine komplette Feature-ID als Muster zu verwenden, wenn die Umleitung auf der Grundlage je nach Feature erforderlich ist.

Muster in der Datei können so ausgewählt werden, dass sie die potentiellen Übereinstimmungen schrittweise eingrenzen. Dies kann zu mehreren Übereinstimmungen für ein bestimmtes Feature führen. In diesem Fall wird die Übereinstimmung mit dem längsten Muster verwendet. Beispiel:

<?xml version="1.0" encoding="UTF-8"?>
<update-policy>
	<url-map pattern="org.eclipse" url="URL1"/>
	<url-map pattern="org.eclipse.jdt" url="URL2"/>
</update-policy>

Im vorstehenden Fall werden alle Eclipse-Features von URL1 aktualisiert, mit Ausnahme von org.eclipse.jdt, die URL2 verwendet.

Aktualisierungsrichtliniendateien enthalten keine übersetzbaren Zeichenfolgen und erfordern deshalb keine besondere NL-Verarbeitung. Im Allgemeinen verwenden die Dateien die UTF-8-Codierung.

A2.3 Automatisches Erkennen von Aktualisierungen

Der dritte Teil der Gesamtlösung wird unter einem anderen Stichwort behandelt, hier aber erwähnt, da es sich dabei um einen integralen Bestandteil der Lösung handelt. Automatische Updates ermöglichen Eclipse, eine Update-Suche nach einem festgelegten Plan auszuführen (bei jedem Start (Standard), einmal pro Tag, einmal pro Woche, usw.).

3. Zusammenfassung

Hier finden Sie eine komplette Aufstellung der Schritte, aus denen sich die Lösung zusammensetzt:

  1. Der Administrator richtet einen Server im LAN des Unternehmens ein, der die lokalen Produkt-Updates aufnimmt. Anfänglich enthält er keine Update-Sites. Auf dem System muss ein HTTP-Server aktiv sein.
  2. Der Administrator richtet eine Aktualisierungsrichtliniendatei auf dem Server ein und weist alle Benutzer an, die bereitgestellte URL in den Benutzervorgaben der Aktualisierungsrichtlinie einzurichten.
  3. Wenn die Produktanbieter Aktualisierungen und Korrekturen auf ihren Update-Sites bereitstellen, lädt der Administrator unterstützte Aktualisierungen auf den lokalen Server herunter.
  4. Automatische Aktualisierungen, die mit einer zeitlich festgelegten Frequenz ausgeführt werden, wenn das Produkt des Client aktiv ist, nehmen die lokalen Aktualisierungen auf und benachrichtigen die Benutzer.
  5. Der Benutzer wählt die Installation der festgestellten Aktualisierungen.

Verwandte Tasks
Scheduler für automatische Aktualisierungen