Feature Freeze Exception request for Upstart in Natty
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
upstart (Ubuntu) |
Fix Released
|
High
|
James Hunt | ||
Natty |
Fix Released
|
High
|
James Hunt |
Bug Description
Binary package hint: upstart
= Overview =
The Upstart work for Natty comprises 4 branches to be merged first into
an Upstream version of Upstart, and then merged down into an
Ubuntu-specific branch for Natty. The branches are:
1) lp:~canonical-scott/upstart/bridges
2) lp:~canonical-scott/upstart/session-support
3) lp:~jamesodhunt/upstart/override-support
4) lp:~jamesodhunt/upstart/upstart-job-visualisation
As the names suggest, Scott worked on (1) and (2), whilst I worked on
(3) and (4). However, the timing of when Scott left meant that (1) and
(2) were in an incomplete state (although the basic coding was
complete). Branches (1) and (2)...
a) Were not documented
b) Were not fully tested
c) Did not have their own set of Upstart unit/functional tests.
I have worked with cjwatson to merge branches (1)-(4) into an upstream
version of Upstart. Due to the issues outlined above, this has taken a
lot longer than anticipated, so at this point, we have only merged
branches (1)-(3) inclusive into:
= Feature Freeze Exception Request =
I would like to apply for a Feature Freeze Exception for the inclusion
of all *four* branches into Natty in 2 staged releases:
- Stage 1 comprising branches : (1)-(3)
- Stage 2 comprising branch : (1)-(4)
This encompasses:
- the addition of Branch (4).
- the addition of test code and documentation for branches (1) and
(2).
== Rationale ==
All 4 branches are deemed to have highly desirable features for users.
=== Branch 1 ===
Branch (1) provides a "socket activation" feature. It has minimal impact
on users in case of problems in that users would have to migrate their
jobs (.conf files) to use the new features.
JUSTIFICATION:
- By default, this migration will not happen for Natty, thus the risk
associated with the branch is deemed to be low.
=== Branch 2 ===
Branch (2) provides:
- chroot support
- session support
- user-session support
These features are highly desirable, particularly the chroot support at
this point. However, unlike Branch (1), due to the nature of the session
support, there are *potential* security considerations (for example a
non-privileged user potentially being able to star/stop a system
service.
JUSTIFICATION
This branch contains very useful features for users. However, the view
is that in light of the amount of testing that has been performed on
this code, Branch (2) should be added to Natty ** with session and
user-session support disabled by default **. This support could be
re-enabled by users if they so wished, or by Ubuntu developers (via
apt/dpkg) at a later date.
=== Branch 3 ===
Branch (3) provides override file support which is a feature which users
have been requesting for some time.
JUSTIFICATION
- Branch (3) does modify the Upstart init daemon itself and has
appropriate documentation and test cases. Thus, the perceived risk of
adding this is deemed to be low.
- Users can choose not to use the override facility if problems are
experienced in its operation.
=== Branch 4 ===
Branch (4) provides job and to some degree event visualisation, again a
feature users have been after for a long time (particularly on Ubuntu
Server).
The core functionality for Branch (4) is fully complete, but it was determined
that with some extra effort a very useful "configuration check" option
could be added which adds to the existing job visualisation work. This
"check-config" option is 90-95% complete (and would have been completed
had we not experienced such issues merging branches (1) and (2)).
Branch (4) should be completable within one week, hence the request to
delay the inclusion of this code.
JUSTIFICATION:
- Branch (4) does not impact the init daemon itself - the
code changes are entirely to the utility program "initctl" so the impact
of a late(r) delivery of this feature is low.
- Branch (4) contains very useful functionality for users (particularly
sysadmins) so we really do want this in Natty.
= Timing =
== Stage 1 ==
At this stage, the view is that we should be able to land Branches
(1)-(3) by Monday 28 February / Tue 1st March.
== Stage 2 ==
This should be possible by 7 March, being the first Monday after Alpha 3
(March 3).
= Testing =
We will get various teams to help out with additional test resources and
the plan is to create a PPA for the new code as soon as possible to
allow users access to the new functionality.
= REFERENCES =
- https:/
- https:/
description: | updated |
Changed in upstart (Ubuntu Natty): | |
assignee: | nobody → Canonical Foundations Team (canonical-foundations) |
Changed in upstart (Ubuntu Natty): | |
assignee: | Canonical Foundations Team (canonical-foundations) → James Hunt (jamesodhunt) |
We now have a PPA for natty including branches (1)-(3) inclusive:
https:/ /launchpad. net/~jamesodhun t/+archive/ upstart- testing
Do *NOT* use this PPA on systems you care about as it has not been fully tested yet. However, if you would like to help the test effort, feedback would be appreciated.