Cog VM continuous integration: update

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Cog VM continuous integration: update

Igor Stasenko
 
Hello, all.

Last few weeks i concentrated my efforts to make Windows slave working
and merge the updates made by Eliot and
synchronize source with svn.
It took quite a bit time to set up windows slaves (multiple people
were involved). I don't want to go into details, but there was some
technical issues,
as well as complications with connecting windows with non-windows,
firewalls etc etc.
At least now it is working and we can build windows VMs.

A merge also costed me quite of a time, since Andreas reorganized
sources and merged cross and win32 plugin codebase with squeak branch
using of svn:externals.
And while i, no doubt, welcome the merge, i had to spend time learning
how i could mirror that on git.
The only thing which i can say after this: git is superior tool. Its a
pity that i had to waste my time fighting with svn, while its only a
question of couple of minutes
for developer(s) to clone sources from git and start using it instead of svn.

So, after couple of hiccups and show-stoppers now everything more-or
less run smoothly on Hudson, (except from stack vm on win32).

Here the list of builds which currently available for download.

Mac:

Cog/Mac Carbon
https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Cog%20Mac%20Carbon/

Stack VM/ Mac Carbon
https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/StackVM%20Mac%20Carbon/

Linux:
Cog
https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Cog%20Unix/
Stack VM/ Unix
https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Stack%20VM%20Unix/


A new kid on the block Windows:

Cog/Win32
https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/CogWin32/

(the Stack VM has linking problems which is yet to be solved, see my
post on vm-dev list)


To download VM just follow one of the links and then pick the .zip with VM.

As for Mac Cocoa VMs: they are broken for now, because yet unmerged.
Hopefully Esteban will find time to update
his branch soon.

The next step is to run tests for built VMs. For this i planning to
create a specialized package, which will contain code snippets for
loading & firing off various tests,
because currently all tests are a bunch of .st scripts, and managing
files over dozen of networked machines is not fun.
So, i think i will just take these snippets and put them into single
MC package, so then it could be managed much easier.

--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: Cog VM continuous integration: update

Yanni Chiu
 
On 01/07/11 8:54 AM, Igor Stasenko wrote:
>
> The next step is to run tests for built VMs. For this i planning to
> create a specialized package, which will contain code snippets for
> loading&  firing off various tests,
> because currently all tests are a bunch of .st scripts, and managing
> files over dozen of networked machines is not fun.
> So, i think i will just take these snippets and put them into single
> MC package, so then it could be managed much easier.

Building VM's on CI server is a great step forward. Thanks for making it
happen.

I'm curious about how to test each build. For a C compiler, typically a
fixed-point is done - i.e. compile the new compiler (yielding stage1
compiler), then use the stage1 compiler to compile the new compiler
again (yielding stage2 compiler). Repeat to get stage3 compiler. The
stage2 and stage3 compiler binaries are supposed to be identical. Then,
in a C/UNIX system, recompiling the OS and tools was a good test suite.

There may be some equivalent thing to do for a JIT/VM + image, but I
can't figure out what it is. Maybe all the method dictionaries need to
be written out in canonical order, then the stage2 and stage3 results
compared. But, that would only test the compiler, not the JIT
functionality. Anyways, just some random thoughts...

Reply | Threaded
Open this post in threaded view
|

Re: Cog VM continuous integration: update

stephane ducasse-2
In reply to this post by Igor Stasenko



>
> Hello, all.
>
> Last few weeks i concentrated my efforts to make Windows slave working
> and merge the updates made by Eliot and
> synchronize source with svn.

excellent.
I like when at least you get concentrated when I run around in meetings and trips.
Excellent!

> It took quite a bit time to set up windows slaves (multiple people
> were involved). I don't want to go into details, but there was some
> technical issues,
> as well as complications with connecting windows with non-windows,
> firewalls etc etc.
> At least now it is working and we can build windows VMs.

Superb.
And there is a lesson there: go a sit with people because they are nice :)

> A merge also costed me quite of a time, since Andreas reorganized
> sources and merged cross and win32 plugin codebase with squeak branch
> using of svn:externals.
> And while i, no doubt, welcome the merge, i had to spend time learning
> how i could mirror that on git.
> The only thing which i can say after this: git is superior tool. Its a
> pity that i had to waste my time fighting with svn, while its only a
> question of couple of minutes
> for developer(s) to clone sources from git and start using it instead of svn.
>
> So, after couple of hiccups and show-stoppers now everything more-or
> less run smoothly on Hudson, (except from stack vm on win32).
>
> Here the list of builds which currently available for download.
>
> Mac:
>
> Cog/Mac Carbon
> https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Cog%20Mac%20Carbon/
>
> Stack VM/ Mac Carbon
> https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/StackVM%20Mac%20Carbon/
>
> Linux:
> Cog
> https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Cog%20Unix/
> Stack VM/ Unix
> https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Stack%20VM%20Unix/


Excellent. I learned that INRIA got an engineer that will be dedicated to Hudson.

>
>
> A new kid on the block Windows:
>
> Cog/Win32
> https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/CogWin32/
>
> (the Stack VM has linking problems which is yet to be solved, see my
> post on vm-dev list)
>
>
> To download VM just follow one of the links and then pick the .zip with VM.
>
> As for Mac Cocoa VMs: they are broken for now, because yet unmerged.
> Hopefully Esteban will find time to update
> his branch soon.
>
> The next step is to run tests for built VMs. For this i planning to
> create a specialized package, which will contain code snippets for
> loading & firing off various tests,
> because currently all tests are a bunch of .st scripts, and managing
> files over dozen of networked machines is not fun.
> So, i think i will just take these snippets and put them into single
> MC package, so then it could be managed much easier.
>
> --
> Best regards,
> Igor Stasenko AKA sig.