43 lines
804 B
Go
43 lines
804 B
Go
package data
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
"os"
|
|
"pgm/logger"
|
|
)
|
|
|
|
// Simple config file for connecting to databases.
|
|
type HostDetails struct {
|
|
Secret string `json:"secret"`
|
|
Hostname string `json:"hostname"`
|
|
DatabaseName string `json:"databaseName"`
|
|
Username string `json:"username"`
|
|
}
|
|
|
|
func ReadHosts() []string {
|
|
var pgee []string
|
|
var homeDir string
|
|
homeDir, err := os.UserHomeDir()
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
file, err := os.Open(homeDir +"/.pgm/hosts")
|
|
if err != nil {
|
|
logged := logger.Logger("failed opening directory: %s" + err.Error())
|
|
if logged == true {
|
|
fmt.Println("failed to load hosts, failure was logged")
|
|
}
|
|
|
|
}
|
|
defer file.Close()
|
|
|
|
pgee, err = file.Readdirnames(0) // 0 to read all files and folders
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
return pgee
|
|
}
|
|
|