runonce in Contao Managed Edition + Contao Manager wird nicht ausgeführt
Hi,
ich versuche grad eine runonce zu starten in einer meiner Contao Bundle Erweiterung.
Die Erweiterung an sich funktioniert, aber die runonce wird nicht ausgeführt. Auch keinerlei Fehlermeldungen zu finden (weder in var/log/ noch im CM Log).
Definiert habe ich die in der composer.json wie zu Contao 3 Zeiten auch im extra Pfad (nicht in config/), nur mit angepasstem Pfad (Bundle Struktur):
Code:
"extra":{
"contao":{
"runonce":[
"src/Resources/contao/runonce/runonce.php"
]
},
Geht das überhaupt noch so?
Wann würde die aufgerufen werden, erst durch Aufruf des Install Tools oder schon vorher?
runonce.php in Contao 4.4
Auch wenn ich die nach src/Resources/contao/config/ schiebe passiert nichts nach der Installation der Erweiterung inkl. Install Tool Aufruf.
Steht aber so, das zumindest diese Variante gehen sollte:
Zitat:
system/runonce.php
The system/runonce.php file is no longer supported. If you need to set up a runonce.php file, put it in the src/Resources/contao/config/ directory.
Ersatz für runonce bei einem contao-bundle?
Muss das Thema nochmal rauskramen.
Bei einer Erweiterung vom Typ Contao-Bundle wird die runonce.php im Verzeichnis src/Resources/contao/config/ meiner Erweiterung zwar ausgeführt, aber eben der Natur nach auch gelöscht.
Das führt dazu, dass beim nächsten Update Composer meckert:
Code:
The package has modified files:
D src/Resources/contao/config/runonce.php
Discard changes [y,n,v,d,s,?]? y
Mal abgeshen davon, das ich das nur auf Kommandozeile beheben kann, ist das ja nun auch nicht sinnvoll das bei jedem Update tun zu müssen.
Gibt es da ein einfachen Ersatz für? Ohne jetzt gleich über doctrine migration oder ähnliches gehen zu müssen?
In meinem Fall musste ich den Namen einer Tabellenspalte umbenennen. Dafür brauche ich eine Migration für bereits installierte Installationen. Der Inhalt des Feldes bleibt gleich.
Bevor ich eine ganz schräge Idee probiere (DAU Lösung) , wollte ich mal fragen ob es da vielleicht eine Lösung für gibt die keine tiefen Kenntnisse in doctrine bedürfen.