Feature Transport - Identify content in feature to release specific media files
Wir übertragen regelmäßig ein Feature auf mehrere Projekte via regelmäßig laufendem Auftrag.
Workflow:
- Masterprojekt: Inhalt vom Feature wird festgelegt und ein Auftrag der eine neue Version des Features erstellt wird ausgeführt
- Slaveprojekt: Täglich schaut ein Auftrag ob es eine neue Version des Features gibt und wenn ja, wird der Inhalte importiert z.B. ein Update der CSS oder JS Dateien.
Nun sollen nach dem Installieren im Slave Projekt alle Mediendateien, die enthalten waren, automatisch freigegeben werden. Dazu müsste ich aber wissen welche das sind. Ich könnte über das Log vom Import Task gehen und mir die rausziehen, aber dafür sollte es doch eine sauberere Lösung geben.
Hat jemand eine Idee?
Gruß,
Daniel
English:
We regularly deploy a feature to multiple projects via a recurring task.
Workflow:
- Master project: The feature's content is defined, and a task is executed to create a new version of the feature.
- Slave project: A task checks daily for a new version of the feature and, if so, imports the content (e.g., an update to the CSS or JS files).
Now, after installation in the slave project, all media files that were included should be automatically released. To do this, I need to know which files these are. I could extract them from the import task's log, but there must be a cleaner solution.
Does anyone have any ideas?
-
Hallo Daniel,
ich bin mir nicht sicher, ob im Auftrag nun ein Skript läuft, dass prüft, ob es eine neue Feature Version gibt und diese dann importiert. Wenn ja, ist die Lösung aus dem Result des Imports die entsprechenden Elemente zu holen. Also etwas in der Art von:
sah = featureInstallagent.installFeature(featureFile, layerMapper);
result = sah.getResult();
updatedElements = result.getUpdatedElements();
newElements = result.getCreatedElements();Oder ist es eine Task Aktion vom Typ ContentTransport? In dem Fall nimmst Du ein nachgelagerte Skript-Aktion und holst Dir das Ergebnis der ContentTransport-Aktion. Daraus müsste man dann die gewünschten Elemente extrahieren können.task = context.getTask();
result = task.getScheduleEntry().getRunningEntries().get(0).getState().getTaskResults().get(0);
...Wenn ich einen Denkfehler gemacht habe (oder etwas übersehen habe), sag kurz Bescheid. Dann versuche ich mir mal Zeit zu nehmen, das selber mal auszuprobieren.
Viele Grüße
Holger0
Please sign in to leave a comment.
Comments
1 comment