On Thu, 2012-07-12 at 23:30 -0400, Robert Middleswarth wrote:
On 07/12/2012 11:48 AM, Mike Burns wrote:
> On Thu, 2012-07-12 at 10:59 -0400, Eyal Edri wrote:
>> ----- Original Message -----
>>> From: "Robert Middleswarth" <robert(a)middleswarth.net>
>>> To: "infra" <infra(a)ovirt.org>
>>> Sent: Thursday, July 12, 2012 5:44:44 PM
>>> Subject: Jenkins and RHEL 6.2
>>>
>>> I see there are 2 RHEL 6.2 slaves added to Jenkins and I see they are
>>> doing something with the engine? What are they actually doing since
>>> I
>>> don't see any artifacts left over? How hard would it be to tweak the
>>> existing ones to create .rpms?
>>>
>> currently they are used for running mvn jobs like unit tests/find bugs.
>>
>> you mean use them to create RPMs for ovirt-engine?
>> supposing make rpm will work for that, all we'll need is to make sure they
have
>> the right rpm build packages installed (rpmbuild, make,autoconf,etc....)
> If we want to do that, we should go down a slightly different path.
> Each project should have a job that makes the source rpm and tarball.
> Then separate jobs on each of the platforms (fedora, RHEL, ubuntu,
> etc...) that will take the srpm and/or tarball and generate packages for
> the distro.
>
> Mike
Well all the packages are built from a tar file but SPRM wont work for
Debian based systems. On my testing system creating the .tar.gz file
takes like 10 seconds. But having an updated tar.gz file on every
master commit could be useful. Not sure how much having a pre-done src
tar is going to save in actual build time. Although having diff build
packages for each distro makes a lot of since. I am all about steps to
make something happen. I can think of some steps we could go though to
convert the process but at best it would be based on my basic knowledge
you know the current build process and would be best for you to outline
the steps to get the changes in place. What steps do you think are the
best steps to getting the process changed up?
So my thoughts in general on this (can be applied to any code based
sub-project except node):
Job 1: build source (done on latest fedora and/or rhel host)
generates source tarball
generates srpm
exports both as artifacts
Job 2: Build Fedora 17 RPMs
takes srpm artifact from Job 1
uses mock to build F17 RPMs
Job 3: Build EL6 RPMs
takes srpm artifact from Job 1
uses mock to build EL6 RPMs
Job 4-X: Build RPM for Distro XYZ
takes either SRPM or tarball depending on distro
build distro specific packages
As for the code to do each job, I don't know all the ins and outs of
building each individual component, but something like a make dist
and/or a make srpm should provide the needed artifacts.
I also don't know mock very well, but I'm pretty sure it's pretty
straightforward for most packages.
Potential problems that I see:
1. spec files will need massaging for el6 and f17 diffs
2. will need distro specific spec file equivalents for each distro we
support
3. possible missing options to create srpm and src tarball
ovirt-node:
only really supported on fedora right now. We could possibly build
packages for el6 and other distros that contain the fedora based iso,
but not sure if that is really useful or not.
As for an EL6 based image, that will take some work to figure out as
well (and not sure if that's really a major driver at this point or
not).
Mike
Thanks
Robert
>>> Thanks
>>> Robert
>>> _______________________________________________
>>> Infra mailing list
>>> Infra(a)ovirt.org
>>>
http://lists.ovirt.org/mailman/listinfo/infra
>>>
>> _______________________________________________
>> Infra mailing list
>> Infra(a)ovirt.org
>>
http://lists.ovirt.org/mailman/listinfo/infra
>