public inbox for gentoo-qa@lists.gentoo.org
 help / color / mirror / Atom feed
From: Stanislav Ochotnicky <sochotnicky@gmail.com>
To: gentoo-qa@lists.gentoo.org
Cc: gentoo-soc@lists.gentoo.org
Subject: [gentoo-qa] Re: [GSoC-status] Collagen - database schema and further changes
Date: Fri, 3 Jul 2009 17:41:27 +0200	[thread overview]
Message-ID: <20090703154127.GA32664@w0rm> (raw)
In-Reply-To: <20090626125103.GA13253@w0rm>

[-- Attachment #1: Type: text/plain, Size: 2904 bytes --]


I decided to post my next status report as reply to my previous post, so
that no unnecessary threads are created. 


Over the course of last week bulk of my work was around installing
dependencies, logging and fixing bugs in chroot creation script.

Installing dependencies is a bit hacky right now, since I am using
emerge.emerge_main() to install them. This means that I don't have to
repeat work of emerge and search dep tree etc etc. 

I'll show this simple hack on following ascii-non-art package hierarchy:

 A->B1->C1
 |  | ->C2
 |
 |->B2->C3

Package A is the one we want to install, B1 and B2 are its dependencies
(we can read them from ebuild of package A). We could walk the
hierarchy, but it's may not be necessary since we were asked to only
try and compile package A. Therefore to install package B1 and B2 we
actually ask emerge (and it will resolve deps for us). Then we install
package A ourselves (by using portage.doebuild). If it fails then 
something is probably wrong in ebuild for package A.

Creating of chroot environment for package installation had a lot of
bugfixes too. It's still not as good as it should be and there is always 
need to manually "synchronize" internal version of emerge with that on
the outside of chroot. I now use a lot of -o bind for mounting
subdirectories in chroot, this is speeding up stuff quite a bit.

As far as logging is concened I am using standard logging python module,
nothing fancy. But it works, and compile machines can now report errors
in more human-readable form, not just build.log. For example:
"Unable to emerge package A-1.2.3 with deps B1-2.0,B2-2.0"

I also had to add data that are transferred between matchbox and
tinderboxes since I realized that otherwise I would not be able to fill
information that need to be present when inserting data into database.
This part is not finished yet, so tinderbox currently sends no data to
matchbox. This regression should be fixed today.

On that note, what I plan to work on during weekend/next week:
 * start inserting data into database (therefore actually create app->db
   layer)
 * now that we really have functioning compilation/dep resolving try to
   install more packages. Therefore create list of 10-20 packages.
   dev-util/git (and its subversion[-dso] dep), postfix/sendmail blockers
   come to mind. If you have more ideas for combinations that usually
   cause problems, I'd love some input
 * Improve logging in a few places



-- 
Stanislav Ochotnicky
Working for Gentoo Linux http://www.gentoo.org
Implementing Tree-wide collision checking and provided files database
http://soc.gentooexperimental.org/projects/show/collision-database
Blog: http://inputvalidation.blogspot.com/search/label/gsoc


jabber: sochotnicky@gmail.com
icq: 74274152
PGP: https://dl.getdropbox.com/u/165616/sochotnicky-key.asc

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2009-07-03 15:42 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-26 12:51 [gentoo-qa] [GSoC-status] Collagen - database schema and further changes Stanislav Ochotnicky
2009-07-03 15:41 ` Stanislav Ochotnicky [this message]
2009-07-09 21:36   ` [gentoo-qa] " Stanislav Ochotnicky
2009-07-17 13:39     ` Stanislav Ochotnicky
2009-07-25 22:50       ` Stanislav Ochotnicky
2009-07-31  9:44         ` Stanislav Ochotnicky
2009-08-07  8:12           ` Stanislav Ochotnicky
     [not found]           ` <20090807081410.GB29277@w0rm.ynet.sk>
2009-08-15 21:10             ` Stanislav Ochotnicky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090703154127.GA32664@w0rm \
    --to=sochotnicky@gmail.com \
    --cc=gentoo-qa@lists.gentoo.org \
    --cc=gentoo-soc@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox