Implementation looks great.  One suggestion on the template description.

Diff comments:

> diff --git a/cloudinit/config/cc_ubuntu_drivers.py 
> b/cloudinit/config/cc_ubuntu_drivers.py
> index 4da34ee..fa3a2c0 100644
> --- a/cloudinit/config/cc_ubuntu_drivers.py
> +++ b/cloudinit/config/cc_ubuntu_drivers.py
> @@ -65,6 +66,32 @@ OLD_UBUNTU_DRIVERS_STDERR_NEEDLE = (
>  __doc__ = get_schema_doc(schema)  # Supplement python help()
>  
>  
> +# debconf template to allow cloud-init pre-configure the global debconf

# Use a debconf template to configure a global debconf variable 
(linux/nvidia/latelink)
# setting this to "true" allows the 'linux-restricted-modules' deb to accept the
# NVIDIA EULA and the package will automatically link the drivers to the 
running kernel.

> +# variable linux/nvidia/latelink to true, allowing linux-restricted-modules
> +# to accept the NVIDIA EULA and automatically link drivers to the running
> +# kernel.
> +# EOL_XENIAL: can then drop this script and use python3-debconf which is only
> +# available in Bionic and later. Can't use python3-debconf currently as it
> +# isn't in Xenial and doesn't yet support X_LOADTEMPLATEFILE debconf command.
> +
> +NVIDIA_DEBCONF_CONTENT = """\
> +Template: linux/nvidia/latelink
> +Type: boolean
> +Default: true
> +Description: Late-link NVIDIA kernel modules?
> + Enable this to link the NVIDIA kernel modules in cloud-init and
> + make them available for use.
> +"""
> +
> +NVIDIA_DRIVER_LATELINK_DEBCONF_SCRIPT = """\
> +#!/bin/sh
> +# Allow cloud-init to trigger EULA acceptance via registering a debconf
> +# template to set linux/nvidia/latelink true
> +. /usr/share/debconf/confmodule
> +db_x_loadtemplatefile "$1" cloud-init
> +"""
> +
> +
>  def install_drivers(cfg, pkg_install_func):
>      if not isinstance(cfg, dict):
>          raise TypeError(


-- 
https://code.launchpad.net/~chad.smith/cloud-init/+git/cloud-init/+merge/371546
Your team cloud-init commiters is requested to review the proposed merge of 
~chad.smith/cloud-init:bug/1840080-ubuntu-drivers-emit-latelink-v2 into 
cloud-init:master.

_______________________________________________
Mailing list: https://launchpad.net/~cloud-init-dev
Post to     : cloud-init-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~cloud-init-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to