Error on build when add-on contains package.json
Wenn ein Add-on eigene Abhängigkeiten enthält, diese aber noch nicht lokal vorliegen, bricht das Kommando “npm buildPortal” ab.
"Module not found: Error: Can't resolve 'ol-stac' in ...
Der Fehler tritt insbesondere dann auf, wenn in einer CI/CD Pipeline ein Masterportal-Repository inkl. Addon-Code frisch geklont wurde ein Build durchgeführt werden soll.
Fix:
Um diesen Fehler zu beheben ist es erforderlich, dass auch alle Abhängigkeiten der Add-ons (sofern welche vorhanden sind) im oder kurz nach dem Schritt “npm Install” aufgelöst werden.
Dies ist möglich, wenn folgendes Script der package.json hinzugefügt würde:
"postinstall": "find ./addons/addons_3_0_0 -maxdepth 2 -name \"package.json\" -execdir npm install \\;"
Dieser Befehl durchsucht im Addon-Verzeichnis nach Ordnern, die eine Datei package.json enthalten und führt anschließend dort “npm Install” aus.
Comments (6)
-
reporter -
-
assigned issue to
-
assigned issue to
-
- changed status to open
-
Hallo @Richard Bischof ,
würde es eventuell schon auslangen wenn man die addons geklont hat in der Pipeline direkt das npm install auszuführen und dann erst zu bauen?
Vgl:
https://bitbucket.org/geowerkstatt-hamburg/masterportal/src/dev/bitbucket-pipelines.yml#lines-31
VG
-
Hallo,
da ich seit dem letzten Kommentar keine Rückmeldung erhalten habe. Setze ich das Issue auf resolved. Falls der Fehler noch existiert kann das Ticket erneut eröffnet werden.
VG,
-
- changed status to resolved
Solution provided
- Log in to comment
Ich habe meinen Fix hier comittet: https://bitbucket.org/richardbischof/masterportal/commits/73ce0121db3ee4a1dd17db54d2bd2125dfc37544
Leider kann ich keinen Pull Request stellen, würde mich aber gerne einbringen. Wäre es möglich, die für Pull Requests möglichen Rechte zu erhalten?
@Kai Culemann