diff --git a/cmd/meta_cli/main.go b/cmd/meta_cli/main.go index 9782b5f..18cf391 100644 --- a/cmd/meta_cli/main.go +++ b/cmd/meta_cli/main.go @@ -20,6 +20,7 @@ func main() { password := flag.String("pass", "", "password user") start := flag.Bool("start", false, "start metadata server") stop := flag.Bool("stop", false, "stop metadata server") + dryrun := flag.Bool("dryrun", false, "launch in dry node") flag.Parse() @@ -30,7 +31,6 @@ func main() { fmt.Println(err) return } - fmt.Print(conf) db := kv.InitDB(kv.Config{ Path: conf.Database.Path, @@ -46,9 +46,13 @@ func main() { Password: *password, SSHKEY: *ssh_key, }, db) - service.Start("metadata@" + *vm_name) + if !*dryrun { + service.Start("metadata@" + *vm_name) + } } else if *stop { nocloud.UnLoadNoCloudInDB(*vm_name, db) - service.Stop("metadata@" + *vm_name) + if !*dryrun { + service.Stop("metadata@" + *vm_name) + } } } diff --git a/internal/load_db/nocloud/render.go b/internal/load_db/nocloud/render.go index ad7eee1..4fa9386 100644 --- a/internal/load_db/nocloud/render.go +++ b/internal/load_db/nocloud/render.go @@ -26,25 +26,21 @@ func renderConfig(path string, cfg Config) (string, error) { return buf.String(), nil } -var DB *badger.DB - func LoadNcCloudInDB(config Config, db *badger.DB) { meta_data, _ := renderConfig("templates/meta-data.tmpl", config) user_data, _ := renderConfig("templates/user-data.tmpl", config) network_config, _ := renderConfig("templates/network-config.tmpl", config) vendor_data, _ := renderConfig("templates/vendor-data.tmpl", config) - DB = db - - kv.AddInDB(DB, "metadata/"+config.Name+"/meta-data", meta_data) - kv.AddInDB(DB, "metadata/"+config.Name+"/user-data", user_data) - kv.AddInDB(DB, "metadata/"+config.Name+"/network-config", network_config) - kv.AddInDB(DB, "metadata/"+config.Name+"/vendor-data", vendor_data) - kv.AddInDB(DB, "metadata/"+config.Name+"/vpc", config.VpcName) - kv.AddInDB(DB, "metadata/"+config.Name+"/bind_ip", config.BindIP) - kv.AddInDB(DB, "metadata/"+config.Name+"/bind_port", config.BindPort) + kv.AddInDB(db, "metadata/"+config.Name+"/meta-data", meta_data) + kv.AddInDB(db, "metadata/"+config.Name+"/user-data", user_data) + kv.AddInDB(db, "metadata/"+config.Name+"/network-config", network_config) + kv.AddInDB(db, "metadata/"+config.Name+"/vendor-data", vendor_data) + kv.AddInDB(db, "metadata/"+config.Name+"/vpc", config.VpcName) + kv.AddInDB(db, "metadata/"+config.Name+"/bind_ip", config.BindIP) + kv.AddInDB(db, "metadata/"+config.Name+"/bind_port", config.BindPort) } func UnLoadNoCloudInDB(vm_name string, db *badger.DB) { - kv.DeleteInDB(DB, "metadata/"+vm_name) + kv.DeleteInDB(db, "metadata/"+vm_name) }