func main() { if username == "" { die("SOFTLAYER_USER_NAME is not set") } if apiKey == "" { die("SOFTLAYER_API_KEY is not set") } client = sl.NewSoftlayer(username, apiKey) if err := Resources.Main(os.Args[1:]); err != nil { die(err) } }
func providers() (*awsprovider.Provider, *softlayer.Provider) { c := credentials.NewStaticCredentials(os.Getenv("KLOUD_ACCESSKEY"), os.Getenv("KLOUD_SECRETKEY"), "") mongoURL := os.Getenv("KLOUD_MONGODB_URL") if mongoURL == "" { panic("KLOUD_MONGODB_URL is not set") } modelhelper.Initialize(mongoURL) db := modelhelper.Mongo dnsOpts := &dnsclient.Options{ Creds: c, HostedZone: "dev.koding.io", Log: logging.NewCustom("dns", true), } dnsInstance, err := dnsclient.NewRoute53Client(dnsOpts) if err != nil { panic(err) } dnsStorage := dnsstorage.NewMongodbStorage(db) usd := &userdata.Userdata{ Keycreator: &keycreator.Key{ KontrolURL: conf.KontrolURL, KontrolPrivateKey: testkeys.Private, KontrolPublicKey: testkeys.Public, }, Bucket: userdata.NewBucket("koding-klient", "development/latest", c), } opts := &amazon.ClientOptions{ Credentials: c, Regions: amazon.ProductionRegions, Log: logging.NewCustom("koding", true), } ec2clients, err := amazon.NewClients(opts) if err != nil { panic(err) } slclient := sl.NewSoftlayer( os.Getenv("KLOUD_TESTACCOUNT_SLUSERNAME"), os.Getenv("KLOUD_TESTACCOUNT_SLAPIKEY"), ) awsp := &awsprovider.Provider{ DB: db, Log: logging.NewCustom("kloud-aws", true), DNSClient: dnsInstance, DNSStorage: dnsStorage, Kite: kloudKite, Userdata: usd, } slp := &softlayer.Provider{ DB: db, Log: logging.NewCustom("kloud-softlayer", true), DNSClient: dnsInstance, DNSStorage: dnsStorage, SLClient: slclient, Kite: kloudKite, Userdata: usd, } return kdp, awsp, slp }
func newSoftlayer() *sl.Softlayer { return sl.NewSoftlayer( os.Getenv("SOFTLAYER_USER_NAME"), os.Getenv("SOFTLAYER_API_KEY"), ) }