Files
mgmt/examples/lang/virt2.mcl
Joe Groocock db95b6381f examples: lang: Reinstate mcl as unification bug is fixed
Struct field names now correctly map based on their `lang` tags in Go
structs, so this example now works as originally intended.

Signed-off-by: Joe Groocock <me@frebib.net>
2021-02-06 16:57:01 +00:00

53 lines
914 B
Plaintext

# qemu-img create -b fedora-23.qcow2 -f qcow2 fedora-23-scratch.qcow2
import "fmt"
import "os"
import "golang/strings"
import "example"
$input = example.str2int(strings.trim_space(os.readfile("/tmp/cpu-count")))
$count = if $input > 8 {
8
} else {
if $input < 1 {
1
} else {
$input
}
}
file "/tmp/output" {
state => $const.res.file.state.exists,
content => fmt.printf("requesting: %d cpus\n", $count),
}
virt "mgmt4" {
uri => "qemu:///session",
cpus => $count,
maxcpus => 8,
memory => 524288,
state => "running",
transient => false,
boot => ["hd", ],
disk => [
struct{
source => "~/.local/share/libvirt/images/fedora-23-scratch.qcow2",
type => "qcow2",
},
],
osinit => "",
cdrom => [
],
network => [
],
filesystem => [
],
auth => struct{
username => "",
password => "",
},
hotcpus => true, # this is the default
restartondiverge => "",
restartonrefresh => false,
}