class PublishOverSSH extends Node

PublishOverSSH

Über den PublishOverSSH-Builder können Dateien per SCP an einen anderen Server übertragen werden oder es können Befehle über SSH ausgeführt werden. Für diese Funktion muss das Publish-Over-SSH Plugin installiert sein.

$config = new \Alvine\Infrastructure\Jenkins\Job\Config();
$builders = new \Alvine\Infrastructure\Jenkins\Job\Config\Builders();
$builder = new \Alvine\Infrastructure\Jenkins\Job\Config\Builders\PublishOverSSH();

// Publisher hinzufügen
$publisher = new PublishOverSSH\Publisher('myConfig');
$publisher->addTransfer(new PublishOverSSH\Transfer('**.png', new \Alvine\IO\File\Directory('/opt/demo/remote')));
$builder->addPublisher($publisher);

// Builder zur Config hinzufügen
$builders->appendChild($builder);
$config->appendChild($builders);

$xml = (string) $builders;
$this->assertContains('**.png', $xml);

Methods

boolean
equals(Alvine $object)

equals

from Node
setAndReplaceConfigNode(string $name, mixed $value)

setAndReplaceConfigNode

from Node
addOrReplaceConfigNode(Node $node)

addOrReplaceConfigNode

from Node
static object
getInstanceFromProperties(Properties $properties)

Objekt aus Eigenschaft erstellen

__construct()

PublishOverSSH

string
getXML()

XML

setContinueOnError(boolean $mode)

setContinueOnError

setFailOnError(boolean $mode)

setFailOnError

setAlwaysPublishFromMaster(boolean $mode)

setAlwaysPublishFromMaster

addPublisher(Publisher $publisher)

Publisher hinzufügen

Details

in Node at line 47
boolean equals(Alvine $object)

equals

Prüft ob diese Node identisch mit der übergebenen Node ist. Da bei der Konfiguration der Tag wichtig ist, wird nur der Tag verglichen.

Parameters

Alvine $object Vergleichsnode

Return Value

boolean Ergebnis

in Node at line 86
protected Node setAndReplaceConfigNode(string $name, mixed $value)

setAndReplaceConfigNode

Diese Methode setzt eine neue Node, bzw. ersetzt diese falls der Tag bereits vorhanden ist.

<node>
  <childA>a</childA>
  <childB>b</childB>
</node>

Mit dem Aufruf von Node::setAndReplaceConfigNode() wird die Node childB ausgetauscht

$this->setAndReplaceConfigNode('childA','new');

ergibt

<node>
  <childA>a</childA>
  <childB>new</childB>
</node>

Parameters

string $name Tag
mixed $value Wert

Return Value

Node

in Node at line 110
protected Node addOrReplaceConfigNode(Node $node)

addOrReplaceConfigNode

Fügt neue Node hinzu, oder ersetzt diese falls der Tag bereits vorkommt.

Parameters

Node $node Neue Node

Return Value

Node

at line 205
static object getInstanceFromProperties(Properties $properties)

Objekt aus Eigenschaft erstellen

Erstellt ein neues Objekt und initialisiert Werte aus einer Eigenschaftsklasse

Die Methode erwatrtet die Eigenschaft: failonerror, alwayspublishfrommaster, continueonerror, publisher

Parameters

Properties $properties Eigenschaften

Return Value

object Neues Objekt

at line 62
__construct()

PublishOverSSH

at line 84
string getXML()

XML

Im Rahmen der Ausgabe wird noch die Eigenschaft hostConfigurationAccess hinzugefügt.

Return Value

string XML

at line 110
PublishOverSSH setContinueOnError(boolean $mode)

setContinueOnError

Einstellung, ob die Übertragung zu einem der weiteren SSH-Server fortgesetzt wird, wenn es bei einem vorherigen Server zu einem Fehler gekommen ist.

Parameters

boolean $mode ein- / ausschalten

Return Value

PublishOverSSH

at line 133
PublishOverSSH setFailOnError(boolean $mode)

setFailOnError

Im Standard führt ein Fehler bei der SSH-Operation zu einem unstabilen Build. Mit dieser Option kann in diesem Fall der Build auf Fehlerhaft gesetzt werden.

Parameters

boolean $mode ein- / ausschalten

Return Value

PublishOverSSH

at line 160
PublishOverSSH setAlwaysPublishFromMaster(boolean $mode)

setAlwaysPublishFromMaster

Im Standard wird die Übertragung der Datei von dem Server, der die Datei hat, durchgeführt. Ist der Zugrif auf den Host aber nur vom Master aus möglich (z.B. wegen der Firewall), so kann hiermit die Übertragung vom Master aktiviert werden. Die Dateien werden zu diesem Zweck zum Master übertragen und erst im zweiten Schitt zum Host.

Das kann zu einem erhöhten Datenaufkommen führen.

Parameters

boolean $mode ein- / ausschalten

Return Value

PublishOverSSH

at line 181
PublishOverSSH addPublisher(Publisher $publisher)

Publisher hinzufügen

Fügt einen weiteren Publisher zur Liste der Publisher hinzu.

Parameters

Publisher $publisher Publisher

Return Value

PublishOverSSH