matthiasforberg
Occasional Collector

Verzeichnisfehler bei Delta-Deployment

Hallo wir haben nach der Beschreibung von Michaela Pahl eine Delta-Generierung bei uns eingerichtet, die nur Medien generiert:

deltaGeneration = DeploymentUtil.createDeltaGeneration(context);

deltaGeneration.dependencyRules(EnumSet.of(DependencyRule.CHANGED_MEDIA));

DeltaGeneration.ChangeSet changeSet = deltaGeneration.calculateChangeSet();

changeSet.configureGenerateTask();

Das funktioniert auch soweit ganz gut, aber eine Kleinigkeit stört mich daran. Wenn sich an den Medien nichts geändert hat, schmeißt das nachfolgende Deployment diesen Fehler:

ERROR 22.03.2017 12:01:24.929 (de.espirit.firstspirit.server.scheduler.DeployTaskExecutor): Source directory 'C:/Program Files (x86)/FirstSpirit5/web/fs5staging/1723/web/' doesn't exist

Das Generierungsverzeichnis "web" ist aber vorhanden und wird gar nicht gelöscht, sondern nur leer (Checkbox "Generierungsverzeichnis vorher leeren"). Kann man diesen Fehler irgendwie abfangen oder ist das möglicherweise ein Bug? Der Kunde bekommt jetzt immer Fehlermeldungen, wenn sich keine Medien geändert haben, das ist natürlich sehr verwirrend!

(Getestet mit 5.2.611 und 5.2.615)

Viele Grüße

Matthias

Labels (2)
0 Kudos
4 Replies
matthiasforberg
Occasional Collector

Re: Verzeichnisfehler bei Delta-Deployment

Nachtrag:

bevor der Vorschlag kommt, sage ich es gleich: das Anhaken der Checkbox "Generieren nur wenn erforderlich" bringt überhaupt keinen Unterschied.

0 Kudos
matthiasforberg
Occasional Collector

Re: Verzeichnisfehler bei Delta-Deployment

Und noch ein zweiter Nachtrag hinterher:

nachdem ich noch weiter getestet habe, bin ich mir doch nicht mehr sicher, ob das Verzeichnis "web" existiert, wenn keine Änderung generiert wird?! Kann es sein, dass durch das Häkchen bei "Generierungsverzeichnis vorher leeren" das Verzeichnis komplett gelöscht wird?

Und noch was ist mir aufgefallen:

wenn ich das Delta Deployment in einem neuen Auftrag anlege (der noch nie gelaufen ist), läuft ja tatsächlich ein Fulldeployment (changeSet.isFullGenerate() == true) und es werden nicht nur die von uns gewollten Medien sondern tatsächlich ALLES generiert. Das ist aber nicht gewünscht, da wir diesen Schritt nur brauchen, um Medien auf einen Media-Delivery-Server zu schieben. Da soll das HTML gar nicht hin!!! Kann man das irgendwie verhindern?

Fragen über Fragen... Smiley Wink

0 Kudos
tenter
I'm new here

Re: Verzeichnisfehler bei Delta-Deployment

Hallo Matthias,

Fragen über Fragen Smiley Happy

  1. Das Leeren des Verzeichnisses ist in der Anleitung nicht erwähnt, wieso macht ihr das? Ich bin hier nicht sicher, ob sich das mit der Delta-Generierung beißt, aber ich glaube ja. Ich hab das kurz mal nachgestellt und bei mir funktioniert es, wenn ich den Haken setze und das Verzeichnis leeren lasse. Auch Mediengenerierung klappt, also hier wird nur generiert was referenziert wird etc.
  2. Das Delta-Deployment bezieht sich pro Auftrag immer auf den letzten erfolgreichen Durchlauf des Auftrags. Das heißt: Ja, die erste Generierung ist immer eine Vollgenerierung, anschließend wird mit Deltas zum letzten erfolgreichen Generieren gearbeitet. Das geht gar nicht anders.

Ich glaube Der Fehler liegt nicht in der Generierung (außer das Verzeichnis zu leeren, das sollte denke ich nicht sein), sondern eher im Deployment. Fürs Deployment müsstest du uns auch noch mal genauere Informationen geben, wie das bei euch genau aussieht.

Änderungen im Auftrag vorzunehmen nachdem dieser bereits einige Male durchgelaufen ist mit Löschen lassen/nicht löschen und weiteren Umstellungen ist nicht so richtig empfehlenswert. Eventuell testest du nochmal mit einem sauberen Auftrag (kannst den bestehenden kopieren).

Gib uns Bescheid, wenn du weitere Ergebnisse für uns hast Smiley Happy

Grüße,

Hannes

0 Kudos
mikula
Crownpeak employee
Crownpeak employee

Re: Verzeichnisfehler bei Delta-Deployment

Hallo Matthias,

benötigst Du noch weitere Hilfe oder hat Dir die Antwort von Hannes bereits geholfen? In diesem Fall wäre es super, wenn Du die "richtige Antwort" entsprechend markierst, damit auch andere Community-Teilnehmer diese auf den ersten Blick finden. Hast du vielleicht neue Ergebnisse für uns? Solltest Du zwischenzeitlich eine eigene Lösung gefunden haben, wäre es nett, wenn Du diese hier bereitstellst.

Viele Grüße

Martin

0 Kudos