Use of MaaS, juju and Openstack as part of certification

Registered by Ara Pulido

Hardware certification provisioning with MaaS (Metal as a Service) and Juju

Plan: To replace its existing provisioning infrastructure with one that utilizes MaaS and Juju.

The work items listed should help to provide an adequate overview of the many challenges and road blocks that we will inevitably come across. It's necessary that we follow the work items in order as they appear.

Blueprint information

Status:
Not started
Approver:
None
Priority:
High
Drafter:
Jeff Marcom
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

=== Proposal ===

Why do we need a new provisioning service?

Checkbox-message and Checkbox satellite are becoming a bit "long in the tooth."
MaaS and Juju (currently still in development) promise to make provisioning and providing services easier in a hyperscaled/cloud world.

The plan is to make use of the current functionality that these pieces of software provide for our hardware certification efforts (both server and desktop) while at the same time helping the MaaS and Juju development projects.

=== Challenges ===

One of the most important topics that we need to discuss as a team is at what point do we decide to branch from the MaaS source tree to do our own, and how MaaS upgrades will have an effect on the work which we've already done.

How much of of our own work will result in duplication of efforts between our team and MaaS development?

=== Definition of Done ===

The following items need to be answered before we can decide to replace our current provisioning structure:

 - Are we able to use it to provision machines for manual certification?
 - Can we use it to obtain SRU and weekly test results?
 - Are we confident and satisfied with its efficiency to do the above?

links:
Charm Store: http://jujucharms.com/
Juju main site, docs, and tutorial: https://juju.ubuntu.com/
Charm Development: https://launchpad.net/charms
MAAS main site, help, and documentation: https://wiki.ubuntu.com/ServerTeam/MAAS
Creating a charm for the Charm Store: https://juju.ubuntu.com/docs/charm-store.html

(?)

Work Items

Work items:
[jeffmarcom] As Jeff M, I want to test the latest MAAS and juju packages for quantal server so that I can have an updated list of current bugs/limitations: INPROGRESS
[zyga] As Ara, I want to create a document/spreadsheet, so that we can track *our* current list of features and bugs and bug numbers: DONE
[jeffmarcom] As Jeff M, I want to review bugs and features list with current team so that I can obtain feedback and next steps: TODO
As Ara, I want to create a plan for OS deployment/certification based on current support scope, so that we have clear objectives and tasks for implementation: TODO
As hardware cert team, I want to create private hardware certification project for this effort, so that we can build in our desired features to the code set and propose merging of accepted features into maas-dev if applicable: TODO
As hardware cert team, I want to create a standalone MaaS dev server per site people can use, so that we have a sandbox to play in: TODO
As Jeff M, I want to create a spreadsheet to track progress we've made on fixes and features, so that we can prioritize todo's based on our current needs: TODO
As hardware cert team, I want to create a local charm for checkbox-certification, so that we can hopefully replace our existing SRU test implementation: TODO
As Ara, I want to set up dedicated MaaS server per physical certification lab, so that we can use it...right?: TODO
As hardware cert team, I want to work with MaaS development team to include our fixes, or suggest new features be implemented in subsequent releases, so that we can minimize duplication of roadmap items and minimize impact of moving to new maas-dev approved build: TODO

This blueprint contains Public information 
Everyone can see this information.