Feature #229
support patching of 3rd party libs
Status: | Feedback | Start date: | 2014-04-28 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 0% | |
Category: | build-generator | Spent time: | - | |
Target version: | - |
Description
patch files need to be stored together with the recipe
History
#1 Updated by Robert Haschke over 10 years ago
patch -p0 <<EOF
...
EOF
didn't work, because it's not clear, which characters to escape in the recipe
#2 Updated by Robert Haschke almost 10 years ago
It's probably not a good idea, to directly insert the patch into the JSON file.
Hence we need patch files. Where should they be stored? From my point of view within citk recipes (as in GAR) as the belong to the recipes.
Moreover, there should be a common default method provided by the templates to apply patches, e.g. defining a variable patches with a list of file names / repos, which are then applied.
#3 Updated by Florian Lier about 9 years ago
Status?
#4 Updated by Jan Moringen about 9 years ago
- Category set to build-generator
- Status changed from New to Feedback
How about a general mechanism for accessing files in the recipe repository and splicing their content into recipes?
#5 Updated by Robert Haschke about 9 years ago
Was meinst Du mit "splicing their content into recipes"?
Das Problem ist ja, dass Dateien im recipe repository so erstmal nicht für jenkins verfügbar sind, oder?
VG, Robert
#6 Updated by Jan Moringen about 9 years ago
Robert Haschke wrote:
Das Problem ist ja, dass Dateien im recipe repository so erstmal nicht für jenkins verfügbar sind, oder?
Ja.
Was meinst Du mit "splicing their content into recipes"?
Anfangs hast du ja geshrieben, dass die Verwendung von
patch -p0 <<EOF ... EOF
um die Patches im Rezept einzubetten nicht praktibel ist, was ich auch denke.
Meine Idee war, diesen Ansatz praktikabel zu machen, indem der Generator einen Ausdruck wie
patch -p0 <<EOF ${file:my-patch.diff} EOF
verarbeitet, indem er den Inhalt der Datei
my-patch.diff
, die sich im Rezept-Repository befinden muss, in den Rezepttext einfügt.#7 Updated by Robert Haschke about 9 years ago
Ja, das könnte ein gangbarer Weg sein. Die Patches sollten dann als separate shell-build-Schritte im jenkins auftauchen.