mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-02 09:47:16 +03:00
cli: Add --cloud-init user-data=/path/to/user-data
Signed-off-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
parent
9a3f73710e
commit
e1bd5f92cf
6
tests/cli-test-xml/user-data.txt
Normal file
6
tests/cli-test-xml/user-data.txt
Normal file
@ -0,0 +1,6 @@
|
||||
#cloud-config
|
||||
password: atomic
|
||||
chpasswd: {expire: False}
|
||||
ssh_pwauth: True
|
||||
ssh_authorized_keys:
|
||||
- ssh-rsa AAA...SDvZ user1@domain.com
|
@ -83,7 +83,8 @@ test_files = {
|
||||
'COLLIDE': "/dev/default-pool/collidevol1.img",
|
||||
'ADMIN-PASSWORD-FILE': "%s/admin-password.txt" % XMLDIR,
|
||||
'USER-PASSWORD-FILE': "%s/user-password.txt" % XMLDIR,
|
||||
'SSH-KEY-FILE': "%s/ssh-key.txt" % XMLDIR
|
||||
'SSH-KEY-FILE': "%s/ssh-key.txt" % XMLDIR,
|
||||
'USER-DATA-FILE': "%s/user-data.txt" % XMLDIR,
|
||||
}
|
||||
|
||||
|
||||
@ -875,9 +876,10 @@ c.add_compare("--connect %s" % (utils.URIs.test_suite), "noargs-fail", use_defau
|
||||
c.add_compare("--connect %s --os-variant fedora26" % (utils.URIs.test_suite), "osvariant-noargs-fail", use_default_args=False) # No arguments
|
||||
c.add_compare("--connect %s --os-variant fedora26 --pxe --print-xml" % (utils.URIs.test_suite), "osvariant-defaults-pxe", use_default_args=False) # No arguments
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init", "cloud-init-default") # default --cloud-init behavior is root-password-generate=yes,disable=yes
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-generate=yes,disable=no", "cloud-init-options") # --cloud-init options
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-file=%(ADMIN-PASSWORD-FILE)s,disable=no", "cloud-init-options") # --cloud-init-options
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init ssh-key=%(SSH-KEY-FILE)s", "cloud-init-options") # --cloud-init-options
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-generate=yes,disable=no", "cloud-init-options") # --cloud-init root-password-generate
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-file=%(ADMIN-PASSWORD-FILE)s,disable=no", "cloud-init-options") # --cloud-init root-password-file
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init ssh-key=%(SSH-KEY-FILE)s", "cloud-init-options") # --cloud-init ssh-key
|
||||
c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init user-data=%(USER-DATA-FILE)s", "cloud-init-options") # --cloud-init user-data=
|
||||
c.add_valid("--panic help --disk=? --check=help", grep="path_in_use") # Make sure introspection doesn't blow up
|
||||
c.add_valid("--connect test:///default --test-stub-command", use_default_args=False) # --test-stub-command
|
||||
c.add_valid("--nodisks --pxe", grep="VM performance may suffer") # os variant warning
|
||||
|
@ -1631,6 +1631,7 @@ class ParserCloudInit(VirtCLIParser):
|
||||
cls.add_arg("root-password-file", "root_password_file")
|
||||
cls.add_arg("disable", "disable", is_onoff=True)
|
||||
cls.add_arg("ssh-key", "ssh_key")
|
||||
cls.add_arg("user-data", "user_data")
|
||||
|
||||
|
||||
def parse_cloud_init(optstr):
|
||||
|
@ -11,6 +11,7 @@ class CloudInitData():
|
||||
root_password_file = None
|
||||
generated_root_password = None
|
||||
ssh_key = None
|
||||
user_data = None
|
||||
|
||||
def _generate_password(self):
|
||||
self.generated_root_password = ""
|
||||
@ -50,6 +51,11 @@ def create_metadata(scratchdir):
|
||||
|
||||
|
||||
def _create_userdata_content(cloudinit_data):
|
||||
if cloudinit_data.user_data:
|
||||
log.debug("Using user-data content from path=%s",
|
||||
cloudinit_data.user_data)
|
||||
return open(cloudinit_data.user_data).read()
|
||||
|
||||
content = "#cloud-config\n"
|
||||
|
||||
if cloudinit_data.root_password_generate or cloudinit_data.root_password_file:
|
||||
|
Loading…
x
Reference in New Issue
Block a user