Server installer improvements

Registered by Colin Watson

Produce a server installer that runs faster at hyperscale and is easier for third parties to customise.

Blueprint information

Status:
Not started
Approver:
Steve Langasek
Priority:
Essential
Drafter:
Colin Watson
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for quantal
Implementation:
Not started
Milestone target:
milestone icon quantal-alpha-3

Related branches

Sprints

Whiteboard

Why do we care about live env instead of d-i?

    rich environment for running code so that it’s extensible
    wants to use the same environment for the ephemeral commissioning environment as for installation

Plugin interface for adding new pages to the installer

Current essentials (cf. ubiquity/plugins/ubi-network.py):

    page name
    sequencing
    running the program

Strawman from Colin: generalized wrapper around a run-parts directory... but sequencing control is needed, this needs to be specified somehow; so there’s a generic interface for sequencing here. The network plugin could/should be converted to this.

Debuggability of individual commands without having to launch all of ubiquity. If each page is a single executable this should be easy; any debconf program can be run standalone on its own, though ‘import debconf’ is too low-level, give some better pythonish interfaces

Analogy with juju: exec-able interfaces are useful since they’re language-independent by default: so provide a direct Python API for common things extension authors may want to do, with shell bindings around them (e.g. “ubiquity-ext get username”)

[vorlon, 2012-05-31] marking definition approved on the basis that we know what the next steps are, but we clearly will have more work items as we get into it

(?)

Work Items

Work items for quantal-alpha-3:
[cjwatson] Find users to see what they actually need (looking at historical bugs; results sent to vorlon/Daviey for further planning): DONE

This blueprint contains Public information 
Everyone can see this information.