Tuesday 19 November 2013

proposal: cloud-init enablement package

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.14 (GNU/Linux)

iQIcBAEBCgAGBQJSi7JVAAoJEETWil5UBqhmDy4QALAOX0EY29KPO5Ff2JVv6KoO
YO6UH4bABf3GWzspFmMGTLcApwFE+iT6Lb1S5FGRKYLYDiZ4WOtwauhKbuy4yaFz
BygPODSM0mi/OP//j9h/vIa+0Cq4SlBGrsjlUmqfAPk9O8Os1mfEwenw/QO7AifB
V2cNllbro4e8aPpaETPlAQqYqOnpZvhUSRjAwFG7xfnX8Ssn11mkD2HTMRfFyXK+
i8cgRBQpYYmJDr2W51i6PLizP17hmfnpo9WZPw04n5yNjLKQmMy48GveX8V2VU4o
2Rl4jecxj8bZvMWlJGVt7vhMvLdPlOr461+WAnkfF+yc94Za2E60xkZSFn4e+2cv
+xN0LU+WUto0zJmXDX/DS6GFnzOvIpufJ+ikK3WxzdxY7N3jR/mzgR4OObue7sOh
LLmgU41fK9LFG21CHIHZrA8J9Bt/ithLtLWJJbmHseXQze0bQsOwelY9iuePOZZG
WPNrAuCe+KUux8CEpDNpfDZOhcRgTMkdJjm0S5xGtiH7Oi/WgsX17zbjR0l9D2jL
6Lel5WQBo5yUNyuM0smsO/lrvbV9xiUhnS/KW4hYyRKDIlu387vyHFCrYV3Ayd6B
wFuIDe6g1mBlwMKACMzAiCM1BWZk+AVho9UI5T2Dv2cQYhQ5Ad81wkRbS7AjsJN+
rWxG1mSdm8RlH6bfKPI8
=BXen
-----END PGP SIGNATURE-----
The overwhelming majority of our cloud users use the LTS release in the
cloud.
During the 13.04 and 13.10 cycle, we have been fairly active in adding
support
and feature for new clouds (Windows Azure and SmartOS) and then
back-porting these features to previous versions of Cloud-init. Given
our velocity
between 12.04 and 13.10, I expect that new cloud-enablement work will
increase.
Further, several cloud vendors ask us on occasion to support new features.

In the process of doing these back-ports, it became apparent that
back-porting
some features can be invasive as we may need to change a core concept or add
potentially destructive features. In other cases, we have found that
back-porting some features are simply not possible (e.x. back-porting
the Windows
Azure datasource to 12.10 is largely impossible with out invasive and risky
changes) While we take extraordinary care to prevent any collateral damage,
there is no way to completely mitigate the risk for existing users.

As a result, I would like to propose the idea of adding a "cloud-init-cwe"
package ("cwe" means cloudware enablement):

* we introduce a new package of cloud-init-cwe-<series>
* cloud-init-cwe depends on cloud-init-cwe-<latest-stable-series>
* cloud-init-cwe-<series> would conflict with cloud-init
* cloud-init-cwe-<series> would contain back-ports and features from later
releases of cloud-init appropriate for enabling new clouds. Depending
on the
scope, cloud-init-cwe-<series> may be either back-ports of the required
functionality or a complete back-port of newer versions from later
releases.
* when a new cycle opens, cloud-init-cwe-<previous_series> is a meta-package
that requires cloud-init, thus providing an upgrade path for users. For
example, users with cloud-init-cwe-t upgrading to 14.10 would get a new
cloud-init-cwe-t that would install cloud-init from 14.10.
* changes cloud-init will be restricted only to security and bug fixes.



Thanks,
Ben

--


Ben Howard
ben.howard@canonical.com
Canonical
GPG ID 0x5406A866