Mirage OS Logo

The MirageOS Documentation

and developer guides

Weekly Meeting: 2015-08-26
By Richard Mortier - 2015-08-26
  • Quality and Test
  • Rust progress
  • Irmin API changes
  • Minutes of previous calls


Daniel Buenzli, Amir Chaudhry, Thomas (samoht) Gazagnaire, Thomas Leonard, Jon Ludlam, Anil Madhavapeddy, Hannes Mehnert, Richard (mort) Mortier (secretary), Mindy Preston, Dave Scott, Magnus Skejgstad


QA & Test

Work has proceeded on ciso, a distributed test infrastructure using Irmin as the coordination layer. Operates somewhat like XenStore: you can register watches, schedule "tasks" (comprising "jobs") that are submitted by writing into the store for workers who're registered via watches. Observe store to see entire status of system: jobs, workers, etc. First large-scale Irmin application. Irmin means you can inspect the entire state but also means that a mistake can nuke your entire repo (though only once). This is essentially the Grand Unified Merge of all of @samoht's projects over the years.

Discussion about deployments. @anil suggests running two deployments, for Mirage and OPAM respectively. Some disucssion whether Citrix want to use it for XAPI. Consensus from @dave/@jon was "maybe". Similar discussion for Jane Street leading to question whether XenStore pieces can be pulled out separately. @samoht felt he could abstract the three schedulers (task, job, worker). @anil will try to deploy towards end of this week.

@anil: on QA, have done lots of upstreaming, refreshed all packages on the planet to everywhere. ~60 patches going into OpenBSD to allow tlstunnel to be shipped. FreeBSD now fixed so works out of the box. ArchLinux still broken. But generally we're in good shape to start getting command line tools in place to get the libraries out there, then go for the Full Mirage Experience.

Discussion about ongoing blockdev naming, .xl generation etc. @dave felt PR ok but Travis was having some problems. He'll take lead on merging. (ed: and this is now done I think.)

Some discussion of grim @mort patch to get environment variable parsing into the mirage CLI tool. Agreement it was indeed grim and @samoht would not merge :) Discussion of what might need to be in cmdliner to parse environment variables. @daniel indicated something is coming to fix all that: features to compose environment variables with command-line flags, with the flag taking precedence in creating the Term, with auto-documentation etc. On the issue tracker as #23, should be complete in the next few days.

Rust Support

Unfortunately, no-one very active on Rust support could make it.

@thomas: More generally, Mini-OS patch upstreaming is on-going but Ian Campbell is on holiday at present. When he's back the last patch is expected to go in. This is going to break the qdom scripts but no-one wants to look at it. @anil feels these may get nuked soon anyway.

@thomas is going to add some figlet (perhaps) ASCII art (and kill some of the debug spew) to bootup to make everything friendlier.

Irmin API Changes

@samoht had "nothing to say" apart from begging for more time! :)

@thomas questions about concurrent connections and resulting API confusions. @samoht says current API intended to make it easy to track which objects are live, with the aim of hiding concurrency but at the cost of perhaps not always being the correct thing to do.

Discussion about this issue and the way its supported for the indexdb backend, and its ability to do atomic transactions in browser, while the POSIX file-based backend can't.

Summary is that the issues arise due to invariants that the JS backend doesn't maintain. Workarounds will be incoming as PRs; the first (#268) will be merged.

Previous Minutes

@thomas noted missing minutes from the index page. @amir explained this was due to two issues: updates not being pushed, and the process for updating the index being manual and not always being done.

(ed: I note that three updates seem to be required-- adding the notes themselves under /tmpl/wiki/weekly/, adding a reference in src/data.ml, and adding a link to /tmpl/wiki/index.md.)

Jitsu on Monk

@anil wanted to know about homepages being served by Jitsu and how often things were being woken up by crawlers etc. @magnus noted that his demo pages sleep most of the time. @anil asked if we can put Jitsu and unikernels on monk. @dave felt not quite due to a Xen booting issue with CentOS7 (now installed). He will tag a particularly good version of the XAPI code for us to use. @anil then noted the main missing piece is Apache style logging from CoHTTP and Irmin which requires Irmin/Xen to be merged. @samoht still has patches queued. @mindy noted that the Irmin/ARP demo uses the Unix backend but can run in memory on Xen, and @samoht that git push to a git repo doesn't work but irmin push is fine. There was then some general realisation that we can simply have websites irmin push logs to an Irmin server running on Unix listening for log collection.

Revisiting the first point, @mort asked @anil about processing his decades of website logs to (effectively) explore multiplexing factors of unikernel (websites at least). @anil said he will look into this.


None specified at this time.