Feature #229

support patching of 3rd party libs

Added by Robert Haschke over 10 years ago. Updated about 9 years ago.

Status:FeedbackStart date:2014-04-28
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:build-generatorSpent 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.

Also available in: Atom PDF