XO 4.x goals

In this article, you'll see what we want for the next branch of Xen Orchestra.

But first, some details about our development cycle.

Dev cycle

A leap of branch (major number, e.g 3.x to 4.x) indicates a big feature or a an important modification in the implementation of critical functionalities.

A minor bump (4.0 to 4.1) is used for new features or a pile of bug fixes, without changing that much the current release.

Small bug fixes and security fixes uses the last digit. As the 3.5.1 for example.

Feature creation process

This is fairly simple:

  • Someone (us or you!) come up with an idea
  • A proposal is written (UI mock up, global architecture)
  • We implement it (or you via a pull request) − in a dedicated branch if the feature is important
  • We test it
  • the implementation is merged into the next-release branch
  • We test it again
  • next-release is merged into master to make a brand new release!

Done!

Permissions and roles (4.0)

That's the main topic of the 4.0, aka "the first major release" in the 4.x branch. You can see it on the top of our road-map.

But we want to get it right. Here is how.

Concepts

We have choosen to separate this big feature in three parts:

  • User management:

  • Access Control List: the main goal of this feature is to provide fine grained permissions.

As you can see, it allows a lot of combinations for all your existing needs: you can either use it at really low level (e.g. allowing Bob to restart its own VM) or at high level to ease the administration (e.g. allowing all users in the team1 group to manage all VMs in the team1VMs set).

  • LDAP integration: having a powerful interface and ACL is great. But we know that as a good administrator you want to manage your users in an LDAP directory ;). Why? Because you simply don't want to create multiple accounts and a password for each of them for a single user! That's why companies use Open LDAP or Active Directory (or any other central directory).

    By connecting xo-server to your LDAP server, user creation will be trivial:

    • when a user logs in XO for the first time, a profile with no permissions is automatically created
    • later, an admin can usethe user management UI to give him some rights

Like that, no passwords are stored in XO!

Charts and performance indicators (4.1)

They will come probably just after permissions and roles. We wrote a post about it recently.

4.2 ?

We have many ideas for XO but the order in which they will be implemented in not set in the stone yet. We'll adapt priorities toward what's popular for our clients and the community (i.e. you :)).

Already in the list:

  • Task scheduler in the UI
  • Disaster recovery and backup UI
  • Proxy for VNC console (accessible through a NAT/firewall)
  • PCI (and GPU) management in GUI (passthrough)
  • Advanced visualization in one dedicated page (much probably using d3js)
  • ...and more on the road-map!

Timing

Our objective is to release 4.0 this fall. Could be September or October, but be sure we are fully committed to XO until the end of this year!

2015 release frequency will mainly depend on our raising rounds in the end of this year: bigger teams allows for faster release.

We are, and will be totally transparent about how it goes.