On 02/22/2013 09:06 PM, Kevin Knowles wrote:
Hi all,

I have the following dependency structure:
A depends on B depends on C

The dependencies are being set in each RPM as requires.  So, A requires B
and B requires C.

When doing a yum install A, I would expect the install order to always be
C, B, A.  But we are seeing B being installed before C some times.  The
problem is B has a post install script that calls an executable installed
by C.  What will I need to set in RPM or Yum to guarantee that C is always
installed before B?  I am using RPM v4.8 if that matters.

Simple requires are always sufficient to guarantee install order, unless there are dependency loops. If B and C order sometimes changes it indicates a loop between them, ie B requires C and C requires B (whether its manually or automatically added dependencies doesn't matter)

So you'll want to check the dependencies of C and B packages carefully. Loops are always best avoided in the first place, but if its not easy to break up the loop (eg by further splitting up packages) adding a scriptlet dependency "Requires(post): C" to B will help to cut the loop in the right direction, as long as there's no "competing" scriptlet dependency in C.

        - Panu -
_______________________________________________
Yum-devel mailing list
Yum-devel@lists.baseurl.org
http://lists.baseurl.org/mailman/listinfo/yum-devel

Reply via email to