29 lines
566 B
Go
29 lines
566 B
Go
package config
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
type Config struct {
|
|
Project string
|
|
Instance string
|
|
Database string
|
|
Host string
|
|
}
|
|
|
|
func Load() (Config, error) {
|
|
c := Config{
|
|
Project: os.Getenv("SPANNER_PROJECT"),
|
|
Instance: os.Getenv("SPANNER_INSTANCE"),
|
|
Database: os.Getenv("SPANNER_DATABASE"),
|
|
Host: os.Getenv("SPANNER_EMULATOR_HOST"),
|
|
}
|
|
if c.Project == "" || c.Instance == "" || c.Database == "" {
|
|
fmt.Printf("%v, %v, %v", c.Project, c.Instance, c.Database)
|
|
fmt.Println()
|
|
return c, fmt.Errorf("Missing .env credential")
|
|
}
|
|
return c, nil
|
|
}
|