Dienstprogramm RunDeployment (runDeployment.sh/.bat)
Mithilfe des Befehlszeilentools runDeployment können Sie von der Befehlszeile aus einen interaktiven Kanal für eine bestimmte Servergruppe implementieren. Verwenden Sie dazu die Einstellungen in der Datei deployment.properties, die alle möglichen Parameter beschreibt. Sie befindet sich im selben Verzeichnis wie das Tool runDeployment. Die Möglichkeit, von der Befehlszeile aus einen interaktiven Kanal zu implementieren, ist besonders nützlich, wenn Sie die Funktion OffersBySQL verwenden. Sie können z. B. ein Campaign-Batch-Flowchart konfigurieren, das regelmäßig ausgeführt wird. Wenn die Ausführung des Flowcharts abgeschlossen ist, kann ein Trigger aufgerufen werden, der die Implementierung der Angebote in der OffersBySQL-Tabelle mithilfe dieses Befehlszeilentools initialisiert.
Beschreibung
Sie finden das Befehlszeilentool runDeployment, das automatisch auf dem Interact-Entwicklungszeitserver installiert wird, im folgenden Verzeichnis:
Interact_home/interactDT/tools/deployment/runDeployment.sh (oder runDeployment.bat auf einem Windows-Server)
Das einzige Argument, das dem Befehl übergeben wird, ist der Speicherort der Datei deployment.properties, die alle möglichen Parameter beschreibt, die zum Implementieren der Kombination von interaktivem Kanal und Laufzeitservergruppe erforderlich sind. Zu Referenzzwecken ist eine Beispieldatei verfügbar.
*
Bevor Sie das Dienstprogramm runDeployment verwenden, müssen Sie es zunächst in einem beliebigen Texteditor bearbeiten, damit es den Speicherort der Java-Laufzeitumgebung auf dem Server angibt. Sie können z. B. den Pfad Interact_home/jre oder Platform_home/jre angeben, wenn eines dieser Verzeichnisse die Java-Laufzeitumgebung enthält, die vom Dienstprogramm verwendet werden soll. Stattdessen können Sie auch den Pfad zu jeder beliebigen Java-Laufzeitumgebung angeben, deren Verwendung mit diesem Release der IBM® Produkte unterstützt wird.
Verwenden des Dienstprogramms runDeployment in einer sicheren SSL-Umgebung
Damit Sie das Dienstprogramm „runDeployment“ verwenden können, wenn auf dem Interact-Server Sicherheitsfunktionen aktiviert wurden (und Verbindungen daher über einen SSL-Port hergestellt werden), müssen Sie die folgenden Schritte ausführen, um die Java-TrustStore-Eigenschaft hinzuzufügen:
1.
Wenn Sie die Datei deployment.properties für Ihre Implementierung des interaktiven Kanals bearbeiten, ändern Sie die Eigenschaft deploymentURL so, dass die sichere SSL-URL verwendet wird, so wie im folgenden Beispiel:
deploymentURL=https://<HOST>.<DOMAIN>:<PORT>/Campaign/interact/InvokeDeploymentServlet
2.
Bearbeiten Sie das Script runDeployment.sh bzw. runDeployment.bat mithilfe eines beliebigen Texteditors, um das folgende Argument zu der Zeile hinzuzufügen, die mit ${JAVA_HOME} beginnt:
-Djavax.net.ssl.trustStore=<TrustStorePath>
Die Zeile könnte z. B. so aussehen, nachdem Sie das TrustStore-Argument hinzugefügt haben:
${JAVA_HOME}/bin/java -Djavax.net.ssl.trustStore=<TrustStorePath> 
-cp ${CLASSPATH}com.unicacorp.Campaign.interact.deployment.tools.
InvokeDeploymentClient $1
Ersetzen Sie <TrustStorePath> durch den Pfad zum tatsächlichen SSL-geschützten Truststore.
Ausführen des Dienstprogramms
Nachdem Sie das Dienstprogramm so bearbeitet haben, dass es die Java-Laufzeitumgebung angibt, und eine Kopie der Datei deployment.properties an Ihre Umgebung angepasst haben, können Sie das Dienstprogramm mit dem folgenden Befehl ausführen:
Interact_home/interactDT/tools/deployment/runDeployment.sh deployment.properties
Ersetzen Sie Interact_home durch den tatsächlichen Wert der Interact-Entwicklungszeitinstallation und ersetzen Sie deployment.properties durch den tatsächlichen Pfad und den Namen der Eigenschaftendatei, die Sie für diese Implementierung angepasst haben.
Beispieldatei deployment.properties
Die Beispieldatei deployment.properties enthält eine kommentierte Liste aller Parameter, die Sie anpassen müssen, damit sie mit Ihrer Umgebung übereinstimmen. Die Beispieldatei enthält darüber hinaus Anmerkungen, die die einzelnen Parameter erklären und angeben, warum Sie einen bestimmten Wert möglicherweise anpassen müssen.
###############################################################################
#
# Die folgenden Eigenschaften werden in das Programm InvokeDeploymentClient eingegeben.
# Das Programm sucht nach der Einstellung für deploymentURL. Das Programm sendet eine Anfrage # an diese URL; alle weiteren Einstellungen werden als Parameter in
dieser Anfrage gesendet. # Das Programm überprüft dann den Status der Implementierung und
# kehrt zurück, wenn die Implementierung abgeschlossen ist (oder der
# angegebene Wert für waitTime erreicht ist).
#
# Die Ausgabe des Programms erfolgt in diesem Format:
# <STATE> : <Misc Detail>
#
# wobei der Wert für STATE einer der folgenden sein kann:
# ERROR
# RUNNING
# SUCCESS
#
# Die Daten in Misc Detail füllen normalerweise den Statusnachrichtenbereich
# in der Implementierungs-GUI auf der Übersichtsseite des interaktiven Kanals auf. # HINWEIS: In Misc Detail
können HTML-Tags vorhanden sein
#
###############################################################################

###############################################################################
# deploymentURL: URL zum Servlet InvokeDeployment, das sich in der Interact-
# Entwicklungszeit befindet. Sollte folgendes Format haben:
# http://dt_host:port/Campaign/interact/InvokeDeploymentServlet
###############################################################################
deploymentURL=http://localhost:7001/Campaign/interact/InvokeDeploymentServlet

###############################################################################
# dtLogin: Mit dieser Anmeldung würden Sie sich am Entwicklungszeitserver
# anmelden, wenn Sie den interaktiven Kanal über die Implementierungs-GUI auf der
# Übersichtsseite des interaktiven Kanals implementieren würden.
###############################################################################
dtLogin=asm_admin

###############################################################################
# dtPW: Das Kennwort für dtLogin
###############################################################################
dtPW=

###############################################################################
# icName: Der Name des interaktiven Kanals, den Sie implementieren möchten
###############################################################################
icName=ic1

###############################################################################
# partition: Der Name der Partition
###############################################################################
partition=partition1

###############################################################################
# request: Dies ist die Art der Anforderung, die dieses Tool aktuell ausführen
# soll. Dabei sind zwei Verhaltensweisen möglich. Ist der Wert deploy, so wird die
# Implementierung ausgeführt. Alle anderen Werte führen dazu, dass das Tool nur den
# Status der letzten Implementierung des angegebenen interaktiven Kanals zurückgibt.
###############################################################################
request=deploy

###############################################################################
# serverGroup: Der Name der Servergruppe, auf der Sie den interaktiven Kanal
# implementieren möchten.
###############################################################################
serverGroup=defaultServerGroup

###############################################################################
# serverGroupType: Gibt an, ob diese Implementierung auf einer Produktionsservergruppe
# oder einer Testservergruppe durchgeführt wird. 1 bezeichnet Produktion,
# 2 bezeichnet Test.
###############################################################################
serverGroupType=1

###############################################################################
# rtLogin: Das Konto für die Authentifizierung an der Servergruppe,
# auf der Sie die Implementierung durchführen.
###############################################################################
rtLogin=asm_admin

###############################################################################
# rtPW: Das zu rtLogin zugehörige Kennwort
###############################################################################
rtPW=

###############################################################################
# waitTime: Sobald das Tool die Implementierungsanforderung übergeben hat, überprüft es
# den Status der Implementierung. Wenn die Implementierung nicht abgeschlossen (oder
# fehlgeschlagen) ist, fragt das Tool den Status weiterhin beim System ab, bis
# der Status abgeschlossen erreicht ist ODER bis der angegebene Wert für waitTime
# (in Sekunden) erreicht ist.
###############################################################################
waitTime=5

###############################################################################
# pollTime: Wenn der Status einer Implementierung noch Laufstatus ist, überprüft
# das Tool den Status weiterhin. Zwischen den Statusüberprüfungen ist das Tool für
# einige Sekunden inaktiv, basierend auf der Einstellung für pollTime.
###############################################################################
pollTime=3

###############################################################################
# global: Die Einstellung false führt dazu, dass das Tool die globalen Einstellungen
# NICHT implementiert. Ist die Eigenschaft nicht verfügbar, werden die globalen Einstellungen # dennoch implementiert.
###############################################################################
global=true