KarmicGoldenIsoImage

Revision 2 as of 2009-06-17 12:00:40

Clear message

Summary

This work allows corporate IT users to:

  • Create a customised image based on a tested configuration, consisting of packages they have approved. The user wants to create and distribute this image to employees to install on desktops and servers in their internal IT environment.
  • Ensure that employees with access to sensitive information encrypt their data.

Release Note

This section should include a paragraph describing the end-user impact of this change. It is meant to be included in the release notes of the first release in which it is implemented. (Not all of these will actually be included in the release notes, at the release manager's discretion; but writing them is a useful exercise.)

It is mandatory.

Rationale

This should cover the _why_: why is this change being proposed, what justifies it, where we see this justified.

User stories

  • Sam is an IT manager responsible for deploying Ubuntu to employees' desktops. He has a list of applications he wants to include as standard, along with various small configuration changes. He would like a customised installation image that can be given to junior technicians to install on new desktop systems.
  • Jane is an information security officer in the civil service. Some of her staff have access to confidential documents. She requires that documents stored on their laptops be encrypted, and instructs the IT manager preparing Ubuntu for deployment to ensure that their laptops are configured that way from installation.

Assumptions

Design

You can have subsections that better describe specific parts of the issue.

Implementation

This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:

UI Changes

Should cover changes required to the UI, or specific UI that is required to implement this

Code Changes

Code changes should include an overview of what needs to change, and in some cases even the specific details.

Migration

Include:

  • data migration, if any
  • redirects from old URLs to new ones, if any
  • how users will be pointed to the new way of doing things, if necessary.

Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Unresolved issues

This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.

BoF agenda and discussion

Create customised image based on tested configuration with approved set of binary packages
 * Setting up URL to internal repository?
  * easy to do with preseeding, but would need to wrap up the process
 * Upgrade policy should be mandatory
  * Metapackage to assist upgrades
  * Repository gateway function not implemented yet
  * Enough preseeding support to set up more or less arbitrary `/etc/apt/sources.list` combination
 * Wrap up repository building function (feed in package, automatically build repository)
 * Require package changes rather than manually editing files in /etc, and so on

Practicalities of building:
 * livecd-rootfs is reasonably straightforward to run on a user machine
 * cdimage toolset is probably too complicated, but is mostly not required (with a customised image, you don't need an apt archive)
 * start out with a live image
 * livecd-rootfs needs more customisation facilities; currently fairly specific to Ubuntu and its known derivatives
  * might not be entirely crazy to rewrite it in Python (currently shell) for better extensibility

Encrypting data (may be necessary for people in sensitive environments):
 * just rely on ecryptfs?


CategorySpec