[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MiNT] Sparemint Build Farm is Finished!



Hey guys,

The IP is now updated so just plain ol http://dev.sparemint.org should
work.  Additionally, the build farm functionality has been completed.
The procedure is: 1. Upload a new src.rpm to sparemint, 2. Confirm that
the server can read everything right, 3. The build is queued.  From
there one server on the build farm (currently only my falcon) that is
servicing the repository in question will pick up the change, download
the src.rpm, build it and upload the resulting binaries to the server.
The user will get an email once a build farm server has began to build
(status is available on the main logged in page of
http://dev.sparemint.org).  The user will then get an email with failure
and the build output or success and the names of the generated binary
rpms and build output.  

There's some semantics to work out, but the hard core sparemint
functionality is now finished with the new proper design (it was ready
long ago but I discovered a colossal design flaw that required a major
db schema redesign).  And I've been testing it for days.  It's
effective.

The user can choose on upload whether the package is to remain in
standard-testing or if it's to be approved into standard.
standard-testing is for packages like gtk-2 that depend on a slew of
other packages that may or may not work properly.  You don't want to
deprecate gtk until all of gtk2 works properly.  Further you don't want
to expose users to all of those packages until all of them are tested,
yet they need to be installed into sparemint so developers can use them.
This is the point of standard-testing.  However, when a user builds a
package like "make" for instance, and knows the package is good, and
knows it won't disrupt things, or perhaps there's a major security
update, he can choose to put the package up for approval.  From here 2
users (maybe will reduce to 1) must also be running SUM with
standard-testing, download the package and do whatever tests they feel
are necessary.  Once there's the consensus of 3 people the package can
be approved into standard.

So package maintainers and developers will most likely run with the
testing repository.  It'll be a careless repository designed to be
bleeding edge or almost experimental (with stability still mostly
assured).  standard will be for the rest of users who expect it to work
PERIOD.  Security updates only.  Later on, I will make admin functions
to allow standard-testing to be merged to standard.. this way we can
sort of "make a release" after sufficient testing.  

The boring work has been done and now is time for the interesting work.
I will begin to bootstrap a mint system with gcc 3.3.6 as the only
compiler and binutils 2.16.  The entire system will be for 68020-60.
Additionally this system will have absolutely every package compiled
with a new mintlib so this will be an interesting system for CT60/Aranym
users!  You can just install it to a second partition and we can come up
with a dual boot util.  Once I am done with this, I will have a nice
script to bootstrap a mint system from source/compiling...  Should be
slick!  Hopefully at least most of our stuff works with gcc 3.3.6!

Finally, this new sparemint site is ready to be pointed at live and
replace the main sparemint site.  That is once I synchronize all the
current packages (the dev repo has become out of date).  I need everyone
who has time to beat the living crap out of this site.  Upload new
src.rpm's, corrupt the data, do whatever you want (besides hitting the
"delete all data" debug option).  The way I code calls for me testing
often so there shouldn't be an abundance of errors.  A good package to
try would be the current gemlib src.rpm.  Just download it and upload it
to the site and see if my falcon can build it.  Cool...

That's all, enjoy.

Thanks,
Mark