On Tue, 2008-04-22 at 20:18 +0800, Max Arnold wrote:
> 1. Create small, task-oriented stage4 for fixed hardware configuration
> 2. Deploy it to several machines (now looking for deployment variants and 
> installers)
> 3. Maintain it (updates)

This is rather funny, since I'm adding support for exactly this stuff to
catalyst (and via other tools which will utilize catalyst).

> I want special build host, where all binary targets are built. Its setup
> should be easily repeatable by other developers (i.e. every task should be 
> scripted,
> without manual tweaks like 'chroot here and patch/emerge this'). Catalyst with
> specs and overlays seems fine to me.

Sure.  In fact, I have 2 different "host types" right now, a "master"
and a "build host" though they can reside on the same machine.

> - Which parts of host system affect on resulting target?

None, if you build *all* of the stages, in order.

> - I probably do not want update portage tree and world on build host very 
> often,
>   but want newer snapshots and seed stages to build targets. Is it possible?

Set portdir in catalyst.conf to anything that you want.

> I want incremental selective binary updates to be pushed on nodes. I.e. 
> generate
> stage4 once, and push only changes for a long period of time. Then repeat.
> 
> - Is it possible with catalyst to produce icremental binary updates (i.e. 
> feed it with
>   new snapshot and take set of updated packages as a result)? To me seems it 
> is not.

Huh?  Have you ever looked at the package cache?

ls -l /var/tmp/catalyst/packages/stage4-i686-custom/All > ~/before.txt
catalyst -f ~/stage4-i686-custom.spec
ls -l /var/tmp/catalyst/packages/stage4-i686-custom/All > ~/after.txt
diff -u ~/before.txt ~/after.txt

> - Is portage tree required on nodes in order to install binary packages 
> (never used them)?

Yes and no.  You don't need a complete tree, but you do need the
profiles.

> - What about sequential stage4 generation without purging cache?

What about it?

> And small questions about catalyst internals. Is it possible to use some 
> functions manually?
> For example, I want to mount-bind required parts (/proc, /dev, snapshot, 
> distfiles...),
> chroot to storedir/tmp/default/stageX, do or test something manually and then 
> exit and unmount.
> Is there are any handy scripts to do this?  Manual catalyst execution 
> step-by-step?

Feel free to write one.  You can't really use just parts of catalyst.

> Also it will be good to just look on emerge -pv output, or list URLs which 
> catalyst
> tries to fetch (for manual fetching and offline operations).

Well, I think that you need to spend a bit more time figuring out what
catalyst can already do before asking for additional support.  Much of
what you've asked here, catalyst already does.  ;]

> Any thoughts?  How do you guys organize things like this?

There's this thing called Gentoo.... ;]

-- 
Chris Gianelloni
Release Engineering Strategic Lead
Games Developer
-- 
[email protected] mailing list

Reply via email to