package main import ( "fmt" "os" "os/user" "github.com/go-ini/ini" ) var mongo_base_path = "/opt/my-mongo" var replicaset_name = "techtransthai-db" var network_name = "mongonet" var number_of_containers int = 5 var max_mem_alloc_percent int = 95 var mongo_initdb_root_username = "sasha" var mongo_initdb_root_password = "12345" func check_root() { currentUser, err := user.Current() if err != nil { fmt.Println("Error getting current user:", err) os.Exit(1) } if currentUser.Uid != "1000" { fmt.Println("You must be root to run this script") os.Exit(1) } } func check_settings() { if number_of_containers < 1 && number_of_containers > 7 { fmt.Println("Number of containers must be between 1 and 7") os.Exit(2) } } func ReadOSRelease(configfile string) map[string]string { cfg, err := ini.Load(configfile) if err != nil { fmt.Println("Fail to read file: ", err) } ConfigParams := make(map[string]string) ConfigParams["ID"] = cfg.Section("").Key("ID").String() return ConfigParams } func get_distro() string { OSInfo := ReadOSRelease("/etc/os-release") OSRelease := OSInfo["ID"] return OSRelease } func main() { check_root() check_settings() fmt.Println(get_distro()) }