cloud-init team mailing list archive
-
cloud-init team
-
Mailing list archive
-
Message #00096
Re: upstart removal / evaluation
On Wed, Aug 30, 2017 at 11:33 AM, Scott Moser <smoser@xxxxxxxxxx> wrote:
> Hey all,
>
> Dimitri submitted a merge proposal that drops packaging of upstart
> items from cloud-init in ubuntu/devel branch.
> https://code.launchpad.net/~xnox/cloud-init/+git/cloud-
> init/+merge/329491
>
> That caused rharper to suggest a read of what all we do have as
> "upstart baggage". My diagnosis is below.
>
Thanks for walking through it all.
>
> The summary is: very small other than the upstart jobs themselves.
>
> I've added one cleanup branch at
> https://code.launchpad.net/~smoser/cloud-init/+git/cloud-
> init/+merge/329946
>
> See my 'grep' and then inline comments of its output.
>
>
> $ grep -r --include "*.py" * | sort
> cloudinit/cmd/main.py
>
> ## code baggage and runtime baggage: none.
> ## comments only, a reference to upstart 'no-net' which is a
> ## reference to upstart/cloud-init-blocknet.conf
>
> cloudinit/config/cc_emit_upstart.py
>
> ## code baggage and runtime baggage: minimal
> ## this doesn't hurt, other than the entry in config/cloud.cfg.tmpl
> ## and the call to 'handle' which immediately checks for
> ## if not is_upstart_system() (which just stats /sbin/initctl):
>
Approx 1 to 4 ms of time.
cloud-init analyze show -i | grep upstart
|`->config-emit_upstart ran successfully @05.52400s +00.00100s
|`->config-emit_upstart ran successfully @04.99000s +00.00100s
|`->config-emit_upstart ran successfully @12.23500s +00.00100s
|`->config-emit_upstart ran successfully @04.45400s +00.00400s
> cloudinit/config/cc_mounts.py
>
> ## code baggage and runtime baggage: minimal
> ## the baggage here is only in knowledge of 'nobootwait' which is
> ## an upstart specific mount option.
>
> cloudinit/config/cc_ubuntu_init_switch.py
>
> ## code baggage: moderate . runtime baggage: minimal
> ## this can be dropped entirely from trunk. it was only useful
> ## when ubuntu was using upstart but moving to systemd
> ## also we can remove it from config/cloud.cfg.tmpl
> ## I've proposed a removal at:
> ## https://code.launchpad.net/~smoser/cloud-init/+git/cloud-
> init/+merge/329946
>
> cloudinit/handlers/__init__.py
>
> ## code bagage and runtime baggage: minimal
> ## simply knowledge of the mapping '#upstart-job' to 'text/upstart-job'
>
> cloudinit/handlers/upstart_job.py
>
> ## code baggage: some, runtime baggage: minimal
> ## this is what handles user-data that specifies '#upstart-job'.
> ## only invoked if used other than the load of the file.
>
> cloudinit/helpers.py
>
> ## code baggage and runtime baggage: minimal
> ## just a 'Paths' knowledge that is used by upstart_job.py
>
> cloudinit/stages.py
>
> ## code baggage and runtime baggage: minimal
> ## uses cloudinit.handlers.UpstartJobPartHandler. runtime only
> ## affected if something starts with '#upstart-job'
>
> cloudinit/util.py
>
> ## a comment... possibly 'multilog' could be cleaned up if
> ## there was no upstart.
>
> setup.py
>
> ## knowledge of packaging upstart/ with the '--upstart' flag.
>
> tests/unittests/test_builtin_handlers.py
>
> ## tests.
>
> tools/make-mime.py
>
> ## knowledge of part type to put into a mime.
>
>
>
> --
> Mailing list: https://launchpad.net/~cloud-init
> Post to : cloud-init@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~cloud-init
> More help : https://help.launchpad.net/ListHelp
>
References