summaryrefslogtreecommitdiff
path: root/cloudinit/config/cc_grub_dpkg.py
diff options
context:
space:
mode:
authorScott Moser <smoser@brickies.net>2020-06-08 12:49:12 -0400
committerGitHub <noreply@github.com>2020-06-08 10:49:12 -0600
commit3c551f6ebc12f7729a2755c89b19b9000e27cc88 (patch)
tree0f7cd7ae6161791e7361e2bdffd38f414857f0c3 /cloudinit/config/cc_grub_dpkg.py
parent30aa1197c4c4d35d4ccf77d5d8854a40aa21219f (diff)
downloadvyos-cloud-init-3c551f6ebc12f7729a2755c89b19b9000e27cc88.tar.gz
vyos-cloud-init-3c551f6ebc12f7729a2755c89b19b9000e27cc88.zip
Move subp into its own module. (#416)
This was painful, but it finishes a TODO from cloudinit/subp.py. It moves the following from util to subp: ProcessExecutionError subp which target_path I moved subp_blob_in_tempfile into cc_chef, which is its only caller. That saved us from having to deal with it using write_file and temp_utils from subp (which does not import any cloudinit things now). It is arguable that 'target_path' could be moved to a 'path_utils' or something, but in order to use it from subp and also from utils, we had to get it out of utils.
Diffstat (limited to 'cloudinit/config/cc_grub_dpkg.py')
-rw-r--r--cloudinit/config/cc_grub_dpkg.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/cloudinit/config/cc_grub_dpkg.py b/cloudinit/config/cc_grub_dpkg.py
index 7888464e..eb03c664 100644
--- a/cloudinit/config/cc_grub_dpkg.py
+++ b/cloudinit/config/cc_grub_dpkg.py
@@ -43,8 +43,9 @@ seeded with empty values, and install_devices_empty is set to true.
import os
+from cloudinit import subp
from cloudinit import util
-from cloudinit.util import ProcessExecutionError
+from cloudinit.subp import ProcessExecutionError
distros = ['ubuntu', 'debian']
@@ -59,7 +60,7 @@ def fetch_idevs(log):
try:
# get the root disk where the /boot directory resides.
- disk = util.subp(['grub-probe', '-t', 'disk', '/boot'],
+ disk = subp.subp(['grub-probe', '-t', 'disk', '/boot'],
capture=True)[0].strip()
except ProcessExecutionError as e:
# grub-common may not be installed, especially on containers
@@ -84,7 +85,7 @@ def fetch_idevs(log):
try:
# check if disk exists and use udevadm to fetch symlinks
- devices = util.subp(
+ devices = subp.subp(
['udevadm', 'info', '--root', '--query=symlink', disk],
capture=True
)[0].strip().split()
@@ -135,7 +136,7 @@ def handle(name, cfg, _cloud, log, _args):
(idevs, idevs_empty))
try:
- util.subp(['debconf-set-selections'], dconf_sel)
+ subp.subp(['debconf-set-selections'], dconf_sel)
except Exception:
util.logexc(log, "Failed to run debconf-set-selections for grub-dpkg")