Profile cover photo
Profile photo
Magrit DCI
zero-conf zero-infra distributed continuous integration system
zero-conf zero-infra distributed continuous integration system


Post has attachment
Open-Source (AGPLv3) project hiring
Java developer enjoying Cryptography or IPV6 arcanes? There's place for you in Magrit project!

And if you like writing HTML/CSS and JS there's so many things to do on the documentation website (which obviously barely even exist!).

Magrit is a distributed Continuous Integration system based on git. The idea is to maximise developers confidence in their codebase by automating the build on every commits and sharing this information to minimize the risk of integrating others work.
magrit DCI
magrit DCI
Add a comment...

Magrit is "hiring" another web developer

Magrit is lacking of a good technical documentation and reference/tutorials.
The main support will obviously be a website.
So we're hiring a web developer to help us build a clean and usable web site for

Reshares will also be appreciated :o)
Add a comment...

Post has attachment
At last Magrit has gained an automated testing tool!

It's called robot for obvious reasons and his job will be test from scratch every packaged Magrit is made of (install the server, unpack the CLI, run whole tests with this executables).

The hardest thing to achieve was to resist to unfriendly tests or unfriendly tested executables, especially magrit build-log which hangs 2 times of 3...

For curious people, here is a good version:
Add a comment...

Post has attachment
Trello for organization
Magrit project is using Trello for his task followup.
This is a public board.
Maybe this could let you add feature requests.

For issues reporting, please use github 'bugtracker' :
Add a comment...

Some fresh news

I'm currently cleaning/rewriting some core functionality such as the persistence of build results. This was a good opportunity to implement a nice feature : the build results are now based on the git tree rather than the commit. Let me explain it to you.

In git, a commit is a message, an author, a date, some parents commit (1 most of the time, 2 or more if merge commit) and a tree.
Git trees are a pseudo filesystem. This mimics the content of your working copy. A git tree, as every object, is referenced by the SHA1 of its content.

When you trigger a build, this is the tree which is important, not the commit. For instance, if you do a git commit --amend to fix a typo in the message, the commit wouldn't be the same, but the tree will because the content hasn't been altered. So if you've already build this commit, changing the commit message won't alter the result of the build (OK/Fail).

This is the purpose of the feature #38 I've merged by this night (

New contributors
I'm very pleased to announce my "jobs offers" have been answered by 2 developers.
The range of functionality we're able to deliver will so be enlarged a lot! Thanks both of you.
cc +Dani Perez +Fabrice SZNAJDERMAN

My "jobs offers" are still opened on similar topic for those who could be interested.
There's also work to do in core of Magrit, so any benevolant will be welcome!
Add a comment...

Post has attachment
Magrit is "hiring" a web developer

Web developer for a sweet webapp for Magrit : control your instance (follow up or stop builds) and administrate it (security, load balancing rule, network policies)

This could/will involve :
- Websocket (this is a modern app)
- "HTML5" (what a dirty but attractive buzzword)

This is an open-source project, so I don't really hire anybody :P
BUT if you're in Paris Area, I can pay you in beers!


(Reshare if you like)
Add a comment...

C/System Developer looking for a open-source project to join?
Magrit is "hiring"

The main topic to work on is the rewriting of some bash shell scripts to C executables. This is for the sake of stability.

There's some scripts which are reusing the same SSH connection along all their life to reuse the already open socket and therefore achieve reasonable performance. The Bash implementation relies on pipe files and use of streams redirection. This is barely working on my system (a fresh and reactive Linux distro) but this fails on Cygwin (for all Microsoft locked-in developers, remember them) and this is unstable if your Magrit instance is running on a slow machine or if the network between your system and the Magrit instance is laggy.

I don't have time to fix those scripts. And I sincerely think nobody would have. This is a really pain in the ass and I'd suffer a lot to make them work this way. So this is why I think the only way to make this be stable is to rewrite all the crap in a more solid language (like C).

If you got a solid pitch for another language, you can make a proposal. But remember you'll have to use git and ssh and your executable must be fast (for instance, if you use a JVM, you'll have to make serious benchs on VM bootstrap time).
Add a comment...

Magrit doesn't fully operate under cygwin yet. Any help welcome!
Add a comment...

Post has attachment
Magrit release rebecca1

- Licensing under Affero GPL v3
- magrit build-log --watch : auto refreshing version of the build-log
- magrit wait-for : let your wait for a build to start/stop and/or be scheduled

- Issues 1, 3, 5, 6
- Issue 2 by +David Gageot
- Issues loggued by FindBugs
Long time no see, uh? But that's a big one, to be fair.

I think I'm almost done with local features.
The main local feature to be missing is the ability to kill the build queue or to cancel a particular kill (for the moment, you still can kill the magrit instance !).

The next major release (isabella trunk) will be focused on distributed features, to let your team share the build logs and then be more efficient!
Stay tuned!
Add a comment...

Post has shared content
Release note du dimanche soir pour +Magrit DCI :

magrit wait-for : blocks until an event occurs on the build of 1 or many commits. Events are : the build end, the build start, the build is scheduled. The default listened event is 'end'.
For instance this let you script a push after a (successful) build.
Add a comment...
Wait while more posts are being loaded