summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2021-08-20 14:24:52 +0000
committerLars Wirzenius <liw@liw.fi>2021-08-20 14:24:52 +0000
commit1147a51375869a4db491430ecc55accbc1e3b759 (patch)
tree75b207b7da4353035ff5328510d7a943185d5c52
parent3b9f7397d4116ae6f661a3d0aaf9f92937775510 (diff)
parent70506e844ea26138494f59bfc3ecec88f2464491 (diff)
downloadvmadm-1147a51375869a4db491430ecc55accbc1e3b759.tar.gz
Merge branch 'default-network' into 'main'
feat! add support for non-virtual networks See merge request larswirzenius/vmadm!43
-rw-r--r--src/config.rs2
-rw-r--r--src/install.rs2
-rw-r--r--vmadm.md47
3 files changed, 47 insertions, 4 deletions
diff --git a/src/config.rs b/src/config.rs
index 50b94b0..6829151 100644
--- a/src/config.rs
+++ b/src/config.rs
@@ -74,7 +74,7 @@ impl Configuration {
fn fill_in_missing_networks(&mut self) {
if self.default_networks.is_none() {
- self.default_networks = Some(vec!["default".to_string()]);
+ self.default_networks = Some(vec!["network=default".to_string()]);
}
}
diff --git a/src/install.rs b/src/install.rs
index 17b7be8..4738855 100644
--- a/src/install.rs
+++ b/src/install.rs
@@ -111,7 +111,7 @@ pub fn virt_install(args: &VirtInstallArgs, iso: &Path) -> Result<PathBuf, VirtI
let networks: Vec<String> = args
.networks
.iter()
- .map(|s| format!("--network=network={}", s))
+ .map(|s| format!("--network={}", s))
.collect();
args.init().create_iso(iso)?;
diff --git a/vmadm.md b/vmadm.md
index 1b004f4..77978b0 100644
--- a/vmadm.md
+++ b/vmadm.md
@@ -65,7 +65,7 @@ authorized_keys:
"default_generate_host_certificate": true,
"default_autostart": true,
"default_networks": [
- "default"
+ "network=default"
],
"ca_key": "~/ca_key",
"authorized_keys": [
@@ -86,7 +86,7 @@ foo:
"ssh_keys": [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQChZ6mVuGLBpW7SarFU/Tu6TemquNxatbMUZuTk8RqVtbkvTKeWFZ5h5tntWPHgST8ykYFaIrr8eYuKQkKdBxHW7H8kejTNwRu/rDbRYX5wxTn4jw4RVopGTpxMlGrWeu5CkWPoLAhQtIzzUAnrDGp9sqG6P1G4ohI61wZMFQta9R2uNxXnnes+e2r4Y78GxmlQH/o0ouI8fBnsxRK0IoSfFs2LutO6wjyzR59FdC9TT7wufd5kXMRzxsmPGeXzNcaqvHGxBvRucGFclCkqSRwk3GNEpXZQhlCIoTIoRu0IPAp/430tlx9zJMhhwDlZsOOXRrFYpdWVMSTAAKECLSYx liw@exolobe1"
],
- "networks": ["default"],
+ "networks": ["network=default"],
"rsa_host_key": null,
"rsa_host_cert": null,
"dsa_host_key": null,
@@ -287,6 +287,49 @@ when I run vmadm spec spec.yaml
then stdout, as JSON, matches file fullspec.json with tilde expansion
~~~
+# Configure networks
+
+vmadm must allow the user to specify any kind of network that
+`virt-install` supports, including bridge ones. This scenario verifies
+that a bridge can be specified.
+
+~~~scenario
+given an installed vmadm
+given a Debian 10 OpenStack cloud image
+given file .config/vmadm/config.yaml from bridgeconfig.yaml
+given file ca_key
+given file .ssh/id_rsa from ssh_key
+given file .ssh/id_rsa.pub from ssh_key_pub
+given file .ssh/config from ssh_config
+given file .ssh/known_hosts from known_hosts
+given file bridgespec.yaml
+when I run vmadm config
+then stdout contains "bridge=br0"
+when I run vmadm spec bridgespec.yaml
+then stdout contains "bridge=br1"
+~~~
+
+~~~{#bridgeconfig.yaml .file .yaml}
+image_directory: ~/images
+default_base_image: ~/base.qcow2
+default_image_gib: 5
+default_memory_mib: 2048
+default_cpus: 1
+default_generate_host_certificate: true
+default_autostart: true
+ca_key: ~/ca_key
+authorized_keys:
+ - ~/.ssh/id_rsa.pub
+default_networks:
+- bridge=br0
+~~~
+
+~~~{#bridgespec.yaml .file .yaml}
+foo:
+ networks:
+ - bridge=br1
+~~~
+
# Colophon
This is a document meant to be processed with [Subplot][] into an HTML