Amazon S3-Integration
Sie können Inhalte direkt von Paligo auf Amazon S3 hochladen. Richten Sie die Paligo-zu-Amazon-S3-Integration ein, damit Paligo sich mit Amazon S3 verbinden kann und Sie dann veröffentlichen können.
Paligo unterstützt Continuous Integration (CI) für Amazon Web Services S3 (Amazon S3). Das bedeutet, dass Sie Inhalte in Paligo erstellen können, z. B. PDFs oder ein HTML-Helpcenter, und diese in Amazon S3 veröffentlichen können, so dass sie für Ihre Endbenutzer sofort verfügbar sind.
Wenn Sie auf Amazon S3 veröffentlichen, werden Ihre Paligo-Inhalte als ZIP-Datei in einen S3-Bucket hochgeladen. Sie können eine Lambda-Funktion verwenden, um die Datei automatisch in einen anderen Bucket zu entpacken, und dann können Sie den entpackten Inhalt in Ihrem Workflow verwenden oder über Amazon S3 veröffentlichen.
Bevor Sie von Paligo auf Amazon S3 veröffentlichen können, benötigen Sie:
-
Ein Amazon S3-Konto
-
Grundlegende Kenntnisse und Fertigkeiten in Bezug auf Amazon S3, einschließlich der Erstellung eines S3-Buckets und der Festlegung von Berechtigungen.
-
Einen Bucket in Amazon S3. Paligo wird Ihre veröffentlichten Dateien in den Bucket hochladen. Die Ausgabe wird als ZIP-Datei hochgeladen.
So richten Sie Paligo für die Publikation auf Amazon S3 ein:
Dadurch kann Paligo Ihre Ausgabe als ZIP-Datei in Ihrem ausgewählten AWS S3-Bucket veröffentlichen. Sie können Amazon S3 auch so einrichten, dass es die Datei automatisch entpackt.
Für die Einrichtung der Paligo-Amazon S3-Integration benötigen Sie:
-
Amazon Web Services-Konto mit Lese- und Schreibzugriff auf den S3-Dienst
-
S3-Bucket, um die gepackten Inhalte zu erhalten, die Paligo hochlädt, wenn Sie veröffentlichen.
Paligo kann Inhalte direkt in das Stammverzeichnis des Buckets oder in einen darin befindlichen Ordner hochladen.
Wenn Sie einen Bucket eingerichtet haben, können Sie Paligo mit Amazon S3 verbinden:
-
Melden Sie sich bei Paligo über ein Benutzerkonto mit Administratorberechtigungen an.
-
Wählen Sie den Avatar in der oberen rechten Ecke aus.
-
Wählen Sie im Menü Einstellungen aus.
-
Wählen Sie die Registerkarte Integrationen.
-
Suchen Sie die Amazon S3-Einstellungen und wählen Sie Hinzufügen.
Anmerkung
Hinzufügen ist nur beim ersten Einrichten einer Integration verfügbar. Danach wird Hinzufügen durch Ändern ersetzt.
Paligo zeigt die Einstellungen der Amazon S3-Integration an.
-
Wählen Sie die AWS-Region aus. Dies ist der geografische Standort des Rechenzentrums für Ihre Amazon Web Services.
Weitere Informationen finden Sie unter https://docs.aws.amazon.com/general/latest/gr/rande-manage.html.
-
Geben Sie den AWS-Schlüssel und das AWS-Secret ein. Dies sind die Sicherheitszugangsschlüssel für Ihr AWS-Konto.
Informationen zum Auffinden des Zugangsschlüssels und des Secret-Schlüssels finden Sie unter https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html.
-
Geben Sie den Namen des AWS-Bucket ein, der den veröffentlichten Paligo-Inhalt erhalten soll. Der Inhalt wird als ZIP-Datei in diesen Bucket hochgeladen.
-
Geben Sie als Zielordner den Verzeichnispfad für den Ordner ein, in den Paligo Inhalte hochladen soll.
Wenn Sie die Zip-Datei direkt in das Stammverzeichnis hochladen möchten, lassen Sie dieses Feld unausgefüllt.
-
Legen Sie mithilfe von Einen nicht eindeutigen Dateinamen verwenden fest, wie Paligo die Zip-Datei der Ausgabe benennen soll. Damit wird gesteuert, wie die Datei im Repository gespeichert wird.
-
Aktivieren Sie das Kontrollkästchen, um bei jeder Veröffentlichung einen einheitlichen Dateinamen für die Ausgabe-Zip-Datei zu verwenden. Enthält das Repository bereits eine Datei mit demselben Namen, wird die alte Datei mit der neuen überschrieben.
-
Deaktivieren Sie das Kontrollkästchen, um bei der Veröffentlichung jeder Ausgabe-Zip-Datei ein Nummernsuffix hinzuzufügen. Das Repository enthält Dateien für jede Ausgabe.
-
-
Drücken Sie Speichern.
-
Wählen Sie die Schaltfläche Ändern für die Integration aus.
-
Wählen Sie Testeinstellungen aus, um einen Verbindungstest durchzuführen.
-
Lautet Ihre Einstellung:
-
Richtig, zeigt Paligo eine grüne Erfolgsmeldung an.
-
Falsch, zeigt Paligo eine rote Fehlermeldung an.
Überprüfen Sie jede Verbindungseinstellung sorgfältig, um sicherzustellen, dass Sie keine Fehler gemacht haben, und versuchen Sie es erneut.
Wenn der Verbindungstest weiterhin fehlschlägt, wenden Sie sich an den Paligo-Support, um Unterstützung zu erhalten.
-
Wenn die Verbindung hergestellt ist, können Sie Auf Amazon S3 veröffentlichen, wie in den Integrationseinstellungen festgelegt.
Wenn Sie die Paligo-Amazon-S3-Integration eingerichtet haben, können Sie Inhalte von Paligo auf Amazon S3 veröffentlichen. Der Prozess ist der „regulären“ Veröffentlichung sehr ähnlich. Sie erstellen Ihre Publikation und Ihre Topics und richten ein Layout für den gewünschten Ausgabetyp ein, z. B. PDF, HTML5 usw. Anschließend wählen Sie die Veröffentlichungseinstellungen aus. Paligo erstellt dann eine Zip-Datei mit den Ausgabeinhalten. Die Zip-Datei wird in Ihrem Browser heruntergeladen und bei Amazon S3 auch in den von Ihnen gewählten S3-Bucket hochgeladen.
Anmerkung
Sie können eine Lambda-Funktion in Amazon S3 einrichten, um den Inhalt automatisch in einen anderen Bucket zu entpacken.
Um auf Amazon S3 zu veröffentlichen, müssen die Integrationseinstellungen eingerichtet sein, damit Paligo sich mit Amazon Web Services verbinden kann. Wenn diese vorhanden sind und Sie eine Publikation und ein Layout eingerichtet haben, um die gewünschte Ausgabe zu erstellen, können Sie auf Amazon S3 veröffentlichen:
-
Wählen Sie das gepunktete Menü (...) für das Topic oder die Publikation im Content Manager aus.
-
Wählen Sie Veröffentlichen aus.
-
Wählen Sie den Ausgabetyp, den Sie veröffentlichen möchten (z. B. PDF, HTML, HTML5, Word, XML, eLearning, SCORM usw.).
-
Wählen Sie das Layout, das für Ihre Ausgabe verwendet werden soll.
-
Wählen Sie die zu veröffentlichenden Sprachversionen aus.
Anmerkung
Wenn keine Übersetzungen verfügbar sind, wird nur die Ausgangssprache angezeigt. Bei mehreren genehmigten Übersetzungen in verschiedene Sprachen können Sie auswählen, welche Sie mit aufnehmen möchten. Paligo veröffentlicht jede Sprachversion als separate Ausgabe.
Bei der PDF-Ausgabe können Sie sie als eine einzige, mehrsprachige Publikation veröffentlichen; aktivieren Sie hierzu das Kontrollkästchen Ausgewählte Sprachen kombinieren.
-
[en] If your content is set up to use Filterung/Profiling, use the Profiling attributes section to apply them. [Optional]. If you do not use filtering, ignore this setting.
[en] Select Edit and then choose the value for each filter that you want Paligo to use. For example, for Audience, choose Expert to include content that is marked as for expert users.
Wenn Sie keinen Filter anwenden möchten, lassen Sie das Feld leer.
Wählen Sie OK aus, um das/die gewählte(n) Profiling-Attribut(e) hinzuzufügen.
-
Aktivieren Sie im Bereich Ausgabe hochladen das Kontrollkästchen In Amazon S3 hochladen. Standardmäßig lädt Paligo die Ausgabe in den Bucket und den Ordner hoch, die in den Einstellungen der Integration von Paligo zu Amazon S3 angegeben sind.
Sie können bei Bedarf in einem anderen Bucket und/oder Ordner veröffentlichen. Wählen Sie das Symbol Bearbeiten neben In Amazon S3 hochladen und wählen Sie dann den Bucket und/oder den Ordner im Dialogfeld Bearbeiten aus.
Die von Ihnen ausgewählten Einstellungen werden nur für diesen einzelnen Veröffentlichungsprozess verwendet. Bei zukünftigen Veröffentlichungen werden wieder das Repository und der Ordner verwendet, die in den Integrationseinstellungen definiert sind.
-
Im Abschnitt Ausgabedateiname können Sie den Dateinamen verwalten.
Standardmäßig verwendet Paligo die in den Systemeinstellungen festgelegte Dateinamensyntax.
Um die im Dateinamen enthaltenen Angaben zu ändern, geben Sie Ihr gewünschtes Format in den Publikationseinstellungen ein. Die Standardeinstellung lautet:
ID-Title-Format
.Sie können folgende Angaben in den Namen aufnehmen:
-
ID - Die ID des Dokuments.
-
Titel - Der Titel der Publikation oder des Topics, das Sie veröffentlichen.
-
Format - Der Name des Ausgabeformats, zum Beispiel PDF oder HTML5.
-
Bearbeitungsdatum - Das Datum, an dem die Publikation oder das Topic zuletzt bearbeitet wurde.
-
Label der Verzweigung – Der Text aus dem Label der Verzweigung für die Publikation oder das Topic. Dies gilt nur, wenn Ihre Inhalte verzweigt wurden und die Verzweigung über ein Label verfügt. Details hierzu finden Sie unter Beschriftungen für Zweige hinzufügen oder bearbeiten.
-
Eindeutiger Wert - Eine von Paligo generierte zufällige Zeichenfolge, die dem Dateinamen hinzugefügt wird, um ihn einzigartig zu machen. Dadurch kann verhindert werden, dass die Datei durch spätere Veröffentlichungen desselben Dokuments überschrieben wird.
Tipp
Wenn Sie @ in das Feld eingeben, zeigt Paligo eine Liste der verfügbaren Werte an, aus denen Sie wählen können. Um einen Wert zu entfernen, klicken Sie ihn an und verwenden Sie die Löschtaste oder Rücktaste, um alle Zeichen zu entfernen.
Anmerkung
Der in der oberen rechten Ecke angezeigte Dateiname ist eine Vorschau auf den Dateinamen, den Paligo bei der Veröffentlichung verwendet.
-
-
Legen Sie die optionalen Parameter fest (lassen Sie das Kontrollkästchen deaktiviert, wenn Sie diese Funktionen nicht wünschen):
-
Speichern Sie die Ausgabe in Paligo - Aktivieren Sie das Kontrollkästchen, um die Zip-Datei in der Ressourcenübersicht zu speichern. Deaktivieren Sie das Kontrollkästchen, wenn Paligo nur die veröffentlichte Ausgabedatei in Ihrem Browser herunterladen soll.
-
E-Mail an mich - Aktivieren Sie dieses Kontrollkästchen, wenn Paligo Ihnen eine E-Mail schicken soll, wenn die Publikation bereit ist. Dies ist bei sehr großen Publikationen von Vorteil, deren Verarbeitung und Veröffentlichung länger dauern können.
-
Debug-Build erstellen - Aktivieren Sie dieses Kontrollkästchen, wenn Paligo eine Protokolldatei und einen Link-Bericht einfügen soll. Wenn Ihre Inhalte ein Problem verursachen, kann der Paligo Support Sie bitten, diese Funktion zu aktivieren, damit er die Protokolldateien zur Ermittlung der Ursache nutzen kann.
-
-
Wählen Sie Dokument veröffentlichen aus.
Paligo beginnt mit der Verarbeitung Ihrer Inhalte und wendet Ihre Layout- und Publikationseinstellungen an. Die benötigte Zeit ist von dem Umfang der Inhalte abhängig, die Sie veröffentlichen (je mehr Inhalte, desto länger dauert der Vorgang).
Die veröffentlichte Ausgabe erscheint wie folgt:
-
Eine Zip-Datei mit der veröffentlichten Ausgabe erscheint im Ordner Downloads auf Ihrem Computer.
Wenn Sie die Einstellungen Ihres Browsers geändert haben, um heruntergeladene Dateien an einem anderen Ort zu speichern, befindet sich die Zip-Datei stattdessen dort.
Wenn Sie eine Publishing-Integration verwenden, wird die Zip-Datei auch an den entsprechenden Dienst gesendet.
-
Ein Link im Panel Aktivitätsfeed zum Herunterladen der veröffentlichten Inhalte.
Anmerkung
Um die Inhalte online zur Verfügung zu stellen, entpacken Sie zunächst die Datei. Sie können die Datei dann lokal verwenden oder einen FTP-Client wie Filezilla verwenden, um den entpackten Inhalt auf einen Webserver hochzuladen.
Tipp
Sie können Ihre Publikationseinstellungen speichern und wiederverwenden, um einen reibungsloseren Publikationsprozess zu erreichen, siehe Publikationseinstellungen. Alle gespeicherten Einstellungen können auch für [en] Batch Publishing verwendet werden.
-
Anmerkung
Dieser Inhalt richtet sich an Entwickler, die Amazon S3 verstehen und wissen, wie man Lambda-Funktionen erstellt, Buckets erstellt und Berechtigungen, IAM-Rollen usw. einrichtet.
Wenn Sie von Paligo auf Amazon S3 veröffentlichen, erstellt Paligo eine Zip-Datei, die Ihren Inhalt enthält. Die Zip-Datei wird in einen Bucket in S3 hochgeladen. Sie haben dann die Wahl, die Datei manuell zu entpacken, oder Sie können die Datei mit einer Lambda-Funktion automatisch entpacken und den entpackten Inhalt in einen anderen Bucket legen. Der entpackte Inhalt kann dann in Ihrem Workflow verwendet werden oder Sie können AWS für das Hosting verwenden, wobei der Inhalt öffentlich über eine URL verfügbar ist.
Um Ihre Inhalte automatisch zu entpacken, richten Sie Folgendes ein:
-
Sie haben nun einen S3-Bucket für den Empfang der Paligo-Dateien (wir nennen dies den „gepackten“ Bucket) und einen S3-Bucket für die entpackten Dateien (den „entpackten“ Bucket).
-
Eine Lambda-Funktion. Wenn Paligo eine Datei in den „gepackten“ Bucket hochlädt, soll die Lambda-Funktion automatisch ausgelöst werden. Die Funktion entpackt die Datei aus Paligo und legt die resultierenden Dateien in den „entpackten“ Bucket.
-
Ein Auslöser, der „Alle Objekte erzeugen Ereignisse“ auslöst, wenn Paligo Inhalte in den „Upload“-Bucket hochlädt.
-
Eine Umgebungsvariable, die den Namen des entpackten Buckets enthält.
-
Der Code zum Entpacken der Datei im Upload-Bucket und Platzieren der extrahierten Dateien im „entpackten“ Bucket. In diesem Artikel finden Sie ein Beispiel für den Code.
-
Informationen zum Einrichten einer Umgebungsvariablen und zum Auslösen einer Funktion finden Sie in der offiziellen Amazon S3-Dokumentation.
Haftungsbeschränkungen
Das folgende Beispiel ist ein Vorschlag, wie Sie das Entpacken umsetzen können. Es liegt in Ihrer Verantwortung, die Funktionen des Codes zu verstehen und ihn entsprechend Ihrer Umgebung und Ihren Anforderungen zu erweitern oder zu ändern. Sie sollten auch sicherstellen, dass die Berechtigungen und andere Faktoren der Ausführungsumgebung korrekt konfiguriert sind. Paligo übernimmt keine Garantie für die Marktgängigkeit oder die Gebrauchstauglichkeit des Beispiels.
Hier ein Beispiel für eine Lambda-Funktion:
import json import urllib.parse import boto3 import zipfile import mimetypes import os import re from io import BytesIO def unpack(event, context): # debug the event # print("Received event: " + json.dumps(event, indent=2)) # Get the bucket name from the event bucket=event['Records'][0]['s3']['bucket']['name'] # Get the key name from the event key=urllib.parse.unquote_plus(event['Records'][0]['s3']['object']['key'], encoding='utf-8') try: # initialize s3 client, this is dependent upon your aws config being done s3=boto3.client('s3', use_ssl=False) # load the object bucketobj=s3.get_object(Bucket=bucket,Key=key)['Body'].read() # the zip function needs a file object Fileobj=zipfile.ZipFile(BytesIO(bucketobj), 'r') filecount=0 for name in Fileobj.namelist(): path=re.match('^(.*?\/)out\/(.*?)$', name) if (path is None): continue outkey=path[1] + path[2] handle=BytesIO(Fileobj.open(name, 'r').read()) mimetype=mimetypes.guess_type(name) s3.upload_fileobj( handle, Bucket=os.environ['BUCKETNAME_OUTPUT'], Key=outkey, ExtraArgs={'ContentType': str(mimetype[0])} ) filecount = filecount + 1 return print('Uploaded {} files to {}'.format(filecount, os.environ['BUCKETNAME_OUTPUT'])) except Exception as e: print(e) print('Error getting object {} from bucket {}.'.format(key, bucket)) raise e
Anmerkung
Beachten Sie, dass diese Lambda-Funktion in der von Paligo bereitgestellten Zip-Datei nach Inhalten im Ordner „Out“ sucht. Nur Dateien im Ordner „Out“ werden dem öffentlich zugänglichen entpackten Bucket hinzugefügt.