Janitor News #7



Happy 2017 everyone!

This is your recurrent burst of good news about the Janitor.

What’s new in Janitor 0.0.7?

We’re about to release our biggest update yet, “Alpha: Mark 7”. It took six months of dedicated efforts, touched almost every line of our code, and will greatly improve our ability to scale by adding more servers to what is now becoming a distributed system.

This means that our resource shortage is almost over, and that we’ll finally be able to send out new invites (and also update all project images more frequently). We know that many of you have been waiting to try the Janitor for months now, and we would like to acknowledge that and thank you for your patience. We hope you’ll enjoy what we built for you.

Here is a list of changes made since Janitor 0.0.6 (released September 2016):

  • Upgraded the Janitor source code to ECMAScript 6
  • Updated all project images with the latest sources and the greatest tools (clang 3.9, git 2.11, hg 3.7, vim 8, rust 1.15, node 7.5, rr 4.5, hub, rg, z, …)
  • Implemented several important security features
  • Implemented an OAuth2-based Single-Sign-On to work transparently across all Janitor hosts
  • Started implementing a self-documenting and self-testing JSON API
  • Implemented an RSA helper to generate certificates on the fly for SSH, Docker/TLS and HTTPS (automatically signed by Let’s Encrypt)
  • Automated all server initialization tasks, making most of the Makefile obsolete
  • Automated all cluster-joining tasks in a separate helper script (which will eventually allow adding your own servers with a single command and support your own projects on Janitor)

All of these improvements should be live by the end of the week, and all new invite emails should be sent out by that time as well.

Announcing Firefox IDE

Now that we’ve laid the foundation for a fast, powerful and ever-growing container service for developers, it’s time for Janitor to enter a new phase. Now we would like to automate the development processes of every major open source project out there, starting with Firefox.

We plan to empower Firefox developers by integrating relevant tools, services and workflows directly in Janitor’s IDE, in order to make them discoverable and easy to use, from a single web interface that can be accessed from anywhere instantly. Contrary to other, more general-purpose development tools, we aim to be highly specialized by implementing all the processes and best practices specific to the Firefox project.

We will start by building Cloud9 plugins to update bugs on Bugzilla; trigger new jobs on TaskCluster; send contributions to Autoland; send push notifications about a patch’s progress all the way from review, to automated tests, to finally being merged into the central repository; and augment the IDE’s code editor with static analysis and automatic code quality suggestions based on amazing tools like clang-tidy. You can participate in this process by reviewing, contributing or implementing ideas in this GitHub issue.

And if this Firefox IDE experiment is successful, we will create similar IDEs for Servo, Rust, Chromium, Thunderbird, KDE, and all other open source projects that Janitor will support.

That’s all Folks! As always, previous newsletters can be found on our blog, and if you have the time, please drop by to say hi in our very own IRC channel (on freenode).

Peace out,