Mailinglist Archive: opensuse-buildservice (266 mails)

< Previous Next >
Re: [opensuse-buildservice] recursive project reference
  • From: John Kelly <jak@xxxxxxxxxxxx>
  • Date: Fri, 21 Nov 2008 03:03:08 +0000
  • Message-id: <200811210303.mAL336Fk023680@xxxxxxxxxxxx>
On Thu, 20 Nov 2008 20:15:25 +0000, John Kelly <jak@xxxxxxxxxxxx>

I think I have better idea now.

hack --> self
redo --> self

self ------> repo

"hack" is a subproject containing my custom packages. May as well
call them hacks.

"redo" is a subproject containing suse updates, which I import from
source rpms and checkin to my project. I don't see any other way to
publish them in a rollup release.

"repo" is the non-update suse repo. Since I import updated packages
into "redo," by referencing the non-update repo, I can avoid certain
updates if I wish. Sometimes suse updates break things, reassurances
to the contrary notwithstanding.

In self, I will use _aggregate to link everything I want to publish,
collecting packages from hack, redo, and repo. The result will be
that everything builds first against the _aggregates in self, giving
the desired bootstrap effect without recursive project references.

When I started using this, I noticed a defect. Some redo packages
will not be published, they're only needed for building other packages
in redo.

That means any packages built in hack will not see them, and wrongly
build against old versions in repo. To solve that problem, I changed
the hack reference from self to redo:

hack --> redo
redo --> self

self ------> repo

Though indirectly, hack still loops back to self, via redo.

But that still leaves a question: what of build-only packages in hack;
redo won't see them to bootstrap against them. Solving that problem
in general seems to require a recursive or circular project reference.
Ugh, there we go again ...

However, since I won't hack a package without publishing it, I don't
care. All my hacks will exist in the self aggregate list, where they
will be found for bootstrap purposes, and thus I can avoid the sin of
project recursion.

Just FYI, in case anyone else uses these ideas in their own project.

Webmail for Dialup Users

To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx

< Previous Next >
Follow Ups